Gracia por sus Ayuda :)

El 18 de septiembre de 2014, 3:55, Jorge <stein...@gmail.com> escribió:

> Hola Omaira,
>
> Como ya muchas cosas están hechas, igual no necesitas implementar filtros
> en tu aplicación si utilizas este plugin:
>
> https://github.com/CakeDC/search
>
> Te ayudará a implementar de forma estándar las búsquedas y filtros de
> datos en tu aplicación para tablas.
>
> No relacionado con tu pregunta, observo que hay mucha lógica presente en
> este controlador, te recomendaría que movieras toda esta lógica a métodos
> en el modelo. La función "consulta()" no pinta bien en el controlador, es
> una violación de MVC. Para tu referencia sobre estos puntos:
>
> http://book.cakephp.org/2.0/en/contributing/cakephp-coding-conventions.html
>
> http://bakery.cakephp.org/articles/Auzigog/2008/12/29/where-should-my-code-go
>
> Espero haberte ayudado. Saludos.
>
>
> On Wednesday, September 17, 2014 9:31:45 PM UTC+1, Omaira Rey wrote:
>>
>> Buenas Tardes
>>
>> Me pueden ayudar a filtar por fecha mi proyecto tiene 3 formularios en el
>> primer formulario el filtro me funciona y en el segundo  ya no y no se
>> porque las variables ya las mire y creo que no son. me pueden ayudar
>>
>> * este es mi controlador :*
>>
>> function index() {
>>         $this->layout = 'plantilla';
>>        //el filto de la fecha
>>           $fecha1 = date('Y-m-d', strtotime($this->data['Medico'
>> ]['fechamedico2']));
>>           $fecha2 = date('Y-m-d', strtotime($this->data['Medico'
>> ]['fechamedico3']));
>> //    debug($remisionfinales);
>>         if (!empty($this->data['Medico']['fechamedico2']) &&
>> !empty($this->data['Medico']['fechamedico3'])): //Aqui preguntamos si
>> tenemos las fechas
>>             //Si hay fechas entonces hacemos nuestra consulta filtrando
>> por fecha
>>             $remisionfinales = $this->Medico->find('all',
>> array('conditions' => array('Medico.fechamedico BETWEEN ? AND ?' =>
>> array($fecha1, $fecha2)),'order'=>array('Medico.id DESC',
>> 'Medico.fechamedico DESC')));
>>         else:
>>             //Si no tenemos datos en los campos fecha que me busque todos
>> los pacientes
>>             $remisionfinales = $this->Medico->find('all',
>> array('order'=>array('Medico.id DESC', 'Medico.fechamedico DESC')));
>>         endif;
>> //      debug($remisionfinales);
>>         $medico = 'SELECT ID_IDEN_USUA, NO_NOMB_USUA FROM USUARIOS WHERE
>> CD_CODI_PERF_USUA=5';
>>         $medico = consulta($medico);
>> //         $this->data['Medico']['fechamedico'] = date('Y-m-d H:i:s',
>> strtotime($this->data['Medico']['fechamedico2']));
>>          //preceimiento para los datos traidos de cnt
>>         foreach ($remisionfinales as $key => $value):
>>             foreach ($medico as $key2 => $value2):
>>                 if ($medico[$key2][1] == $remisionfinales[$key]['
>> Paciente']['medico']):
>>                     $remisionfinales[$key]['Paciente']['nombre_medico']
>> = $medico[$key2][1];
>>                 endif;
>>
>>         endforeach;
>>          endforeach;
>>         $this->set(compact('remisionfinales'));
>>         $this->set('cabecea_pagina', 'remisionfinale');
>>         $this->set('accion', 'index');
>> //                debug($medicos);
>>         $estadoremisiones = $this->Estadoremisione->find('list',
>> array('fields' => array('id', 'estadoremisione')));
>>         $this->set('estadoremisiones', $estadoremisiones);
>>         $this->set('remisionfinales', $remisionfinales);
>>     }
>>
>>
>>
>> * y este es mi index:*
>>   <div class="box-content">
>>        <?php echo $this->Form->create('Remisionfinale', array('url' =>
>> array('controller' => 'remisionfinales', 'action' => 'index'))); ?>
>>
>>           <tr>
>>             <td align="right" nowrap="nowrap"><p>Fecha inicial:</p></td>
>>             <td width="151" class='cajasbig'><?php echo
>> $this->Form->input('fechamedico2', array('type' => 'text', 'label' =>
>> false, 'class' => 'input-xlarge datepicker')); ?></td>
>>         </tr>
>>
>>         <td align="right" nowrap="nowrap"><p>Fecha final:</p></td>
>>         <td width="151" class='cajasbig'><?php echo 
>> $this->Form->input('fechamedico3',
>> array('type' => 'text', 'label' => false, 'class' => 'input-xlarge
>> datepicker')); ?></td>
>>         </tr>
>>         <button type="submit" class="btn btn-primary">Filtrar</button>
>>
>>
>> El servicio de correo misena es soportado tecnológicamente por © Google y
>> ofrecido por el Servicio Nacional de Aprendizaje – SENA de manera gratuita
>> a todos los colombianos y en especial a los aprendices e instructores de
>> Programas de Formación Titulada y Complementaria. Los contenidos, textos,
>> imágenes, archivos y puntos de vista enviados en este mensaje son
>> responsabilidad exclusiva del remitente y no reflejan ni comprometen
>> oficialmente a la institución. No se autoriza el uso de esta herramienta
>> para el intercambio de correos masivos, cadenas o spam, ni de mensajes
>> ofensivos, de carácter político, sexual o religioso, con fines de lucro,
>> con propósitos delictivos o cualquier otro mensaje que se considere
>> indebido o que vaya en contra de la Ley.
>>
>  --
> Has recibido este mensaje porque estás suscrito a un tema del grupo
> "CakePHP-es" de Grupos de Google.
> Para anular la suscripción a este tema, visita
> https://groups.google.com/d/topic/cakephp-es/71lyuhiDzdI/unsubscribe.
> Para anular la suscripción a este grupo y a todos sus temas, envía un
> correo electrónico a cakephp-es+unsubscr...@googlegroups.com.
> Para publicar en este grupo, envía un correo electrónico a
> cakephp-es@googlegroups.com.
> Visita este grupo en http://groups.google.com/group/cakephp-es.
> Para acceder a más opciones, visita https://groups.google.com/d/optout.
>

-- 
 

El servicio de correo misena es soportado tecnológicamente por © Google y 
ofrecido por el Servicio Nacional de Aprendizaje – SENA de manera gratuita 
a todos los colombianos y en especial a los aprendices e instructores de 
Programas de Formación Titulada y Complementaria. Los contenidos, textos, 
imágenes, archivos y puntos de vista enviados en este mensaje son 
responsabilidad exclusiva del remitente y no reflejan ni comprometen 
oficialmente a la institución. No se autoriza el uso de esta herramienta 
para el intercambio de correos masivos, cadenas o spam, ni de mensajes 
ofensivos, de carácter político, sexual o religioso, con fines de lucro, 
con propósitos delictivos o cualquier otro mensaje que se considere 
indebido o que vaya en contra de la Ley.

-- 
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos 
de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía 
un correo electrónico a cakephp-es+unsubscr...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a 
cakephp-es@googlegroups.com.
Visita este grupo en http://groups.google.com/group/cakephp-es.
Para obtener más opciones, visita https://groups.google.com/d/optout.

Responder a