weina67
(Weinanas)
1
So I have
$criteria = new CDbCriteria;
$criteria->condition = 'user_id=:userID';
$criteria->params = array(':user_id' => Yii::app()->user->id);
$criteria->order = 'updated_time DESC';
if(isset($_GET['v']))
{
$site = $this->socType[$_GET['v']];
$criteria->addCondition('AND site=' . $site);
}
$dataProvider =new CActiveDataProvider('Post', array(
'pagination'=> array('pageSize'=> 20),
'criteria'=> $criteria,
)
);
$site should give an integer from 0 to 1, but
$criteria->addCondition('AND site=' . $site);
doesn’t do the job of filtering according to site column listed in the database.
what can I do?
mdomba
(Maurizio Domba Cerin)
2
Check the documentation for addCondition() - http://www.yiiframework.com/doc/api/1.1/CDbCriteria#addCondition-detail
spoiler: the "AND " should be removed from your condition
weina67
(Weinanas)
3
but even if I do
$criteria->addCondition(‘site’, $site, ‘AND’);
it still does not work.
francis
(Francis Tm)
4
why not reading manual line-by-line? or you don’t know english?
you should using
$criteria->addCondition('site = :site', 'AND');
$criteria->params += array(':site' => $site);
weina67
(Weinanas)
5
Yes, I do speak english but the manual is confusing.
So now I have the following, but it still doesn’t work.
$criteria = new CDbCriteria;
$criteria->condition = 'user_id=:userID';
$criteria->params = array(':user_id' => Yii::app()->user->id);
if(isset($_GET['v']))
{
$site = $this->socType[$_GET['v']];
$criteria->addCondition('site = :site', 'AND');
$criteria->params += array(':site' => $site);
}
$dataProvider =new CActiveDataProvider('Post', array(
'pagination'=> array('pageSize'=> 20),
'criteria'=> $criteria,
)
);
The
$criteria->addCondition('site = :site', 'AND');
$criteria->params += array(':site' => $site);
does not work.
thank you for your help!
francis
(Francis Tm)
6
doesn’t work? any error output? or you want using it into cgridview ?