Cdbcriteria Para Consulta


(Omar Virili) #1

Hola estimado amigos necesito de su gran conocimiento ya que tengo el siguiente trozo de codigo, y lo que necesito hacer es lo siguiente:

con una tabla de ingresos que tiene id,dni,fecha necesito filtar los datos segun dos fechas

de inicio y fin.

el codigo de abajo funcion pero tengo un problema no me toma en la consulta los valores propios de la fecha

de inicio y de fin solo me arroja los valores que se encuentran entre esas fecha pero no lo que correspondan a las misma, agradeceria si me pueden ayudar con este problemita. Gracias

$criteria=new CDbCriteria;

$ini = new DateTime($iniSorteo);

$ini = $ini->format(‘Y-m-d’);

$fin = new DateTime($finSorteo);

$fin = $fin->format(‘Y-m-d’);

//$criteria->addCondition(’"$ini" >= fecha AND fecha <= “$fin”’);

//$criteria->addCondition(‘fecha = “$ini”’,‘OR’);

//$criteria->addCondition(‘fecha = ‘.’"$ini"’,‘OR’);

//$criteria->addCondition(‘fecha = “$fin”’,‘OR’);

$criteria->addBetweenCondition(‘fecha’,$ini,$fin);

$dataProvider = new CActiveDataProvider($modIng,array(‘criteria’=>$criteria,

  'pagination'=&gt;array('pageSize'=&gt;20,),));

(Omar Virili) #2

Bueno amigos encontre una solucion no creo que sea la mas correcta pero es la unica que me deja de hacer doler la cabeza por ahora

el cambio que tuve que realizar fue el siguiente

$criteria=new CDbCriteria;

$ini = new DateTime($iniSorteo);

$ini = $ini->format(‘Y-m-d [color="#FF0000"]00:00:00[/color]’);

$fin = new DateTime($finSorteo);

$fin = $fin->format(‘Y-m-d [color="#FF0000"]23:59:59[/color]’);

$criteria->addBetweenCondition(‘fecha’,$ini,$fin);

$dataProvider = new CActiveDataProvider($modIng,array(‘criteria’=>$criteria,

‘pagination’=>array(‘pageSize’=>20,),));

Y con eso con suerte ya funciono Gracias de todas forma