¿Cómo puedo consultar datos con dos rangos de fechas en CakePHP?

Estoy tratando de ejecutar esta consulta para obtener 'Banners' entre un date_start y un date_end.

$current_date = date('Y-m-d');
$banners = $this->Banner->find('all', 
                     array('conditions' => 
                               array("date_start >= " => $current_date, 
                               "date_end <= " => $current_date)
                     ));

Intenté usar NOW () que parece causar problemas, intenté usar una condición "Y" y también concatené la consulta con $ current_date (por ejemplo, "date_start =>". $ Current_date)

¿Alguna idea de dónde me estoy equivocando?

Editar

Se las arregló para que funcionara cambiando las condiciones:

$banners = $this->Banner->find('all', array('conditions' => array("'$current_date' >=" >= "date_start", "'$current_date' <=" => 'date_end')));

preguntado el 16 de mayo de 11 a las 17:05

1 Respuestas

deberías cambiar tu ecuación

date_start <= $ current_date y date_end> = $ fecha actual

digamos que date_start es 1/5/2011 y date_end es 3/5/2011 y curr_date es 2/5/2011

observe que curr_date es más grande que start_date y más pequeño que end_date, en su condición usted marca lo contrario

contestado el 16 de mayo de 11 a las 21:05

Saludos - ¡Me acabo de dar cuenta de eso después de pensar en mi problema! - Jamie Chapman

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.