Cdbcriteria

is it possible to use addcondition and addbetweencondition at the same time.

i’m trying to retrieve data which dates falls between startdate and enddate, where the barangay id is equals to barangay id.

    $SCkICriteria->addCondition('barangay_id = :brgy_id');


    $SCkICriteria->addBetweenCondition('startDate', $firstDay, $lastDay);


    $SCkICriteria->order = 'startDate ASC';


    $SCkICriteria->params = array(


        'brgy_id' => $brgyID


    );

Yes. I think. You might need to the extra option of ‘AND’ to the first condition.

$SCkICriteria->addCondition(‘barangay_id = :brgy_id AND’);

this is what you mean right?

I think it’s COMMA ‘AND’ check the addCondition() parameters. ‘AND’ may already be the default. Other than that, have you tried it? Does it work? If not what do you get back?

You’re overwriting the CDbCriteria object’s parameters. Try this instead:




$SCkICriteria->addCondition('barangay_id = :brgy_id');

$SCkICriteria->addBetweenCondition('startDate', $firstDay, $lastDay);

$SCkICriteria->order = 'startDate ASC';

$SCkICriteria->params['brgy_id'] = $brgyID;



Better yet, use addColumnCondition():




$SCkICriteria->addColumnCondition(array('barangay_id'=>$brgyID));

$SCkICriteria->addBetweenCondition('startDate', $firstDay, $lastDay);

$SCkICriteria->order = 'startDate ASC';