0

如何为查询创建 cdbcriteria,例如:

select * from table_name where 'profile_type'='*'OR 'profile_type'=$usertype  AND 'location'='*'OR 'location'=$country
4

2 回答 2

1

你可以这样尝试:

$criteria = new CDbCriteria;
$criteria->condition  = "(profile_type='*' OR profile_type=:prof ) AND 
                         (location='*' OR  location=:loc ) ";

$criteria->params = array(':prof' => $usertype, ':loc' => $country);

$model = MyModel::model()->findAll($criteria );
于 2014-02-05T12:56:54.520 回答
1

您可以直接通过以下条件。

注意:这是方法之一。不是终极解决方案。

$criteria = new CDbCriteria;
$criteria->condition  = "(profile_type ='*' OR profile_type = $usertype)  AND (location ='*' OR location = $country)";

$model = Model_name::model()->findAll($criteria );
于 2014-02-05T12:41:30.723 回答