2017-08-16 93 views
0

何做我转换这个查询准备如何在Yii1中准备好声明?

Booking::model()->findAllByAttributes(array('is_deleted'=>NOTDELETED,'status'=>BOOKINGSTATUSPENDING,'payment_status'=>UNPAIDBOOKINGSTATUS,'transaction_status'=>FAILEDPAYMENTTRANSACTION),array('order'=>'id DESC', 'limit'=>DASHBOARDVIEWRECORDCOUNT)); 
+0

后? –

+0

某些工具显示,在此位置可能存在SQL禁令攻击,因此我想将其转换为预防性声明 –

+0

您能否解释什么是NOTDELETED,BOOKINGSTATUSPENDING ..等等? ...不是PHP var ..所以这些是常量? – scaisEdge

回答

0

大量尝试解决办法,我已经找到办法为

$criteria = new CDbCriteria; 
$criteria->condition ='status=:status AND payment_status=:payment_status AND transaction_status=:transaction_status '; 
$criteria->params = array(':status'=>BOOKINGSTATUSPENDING,':payment_status'=>UNPAIDBOOKINGSTATUS,':transaction_status'=>FAILEDPAYMENTTRANSACTION); 
$criteria->limit= DASHBOARDVIEWRECORDCOUNT; 
$criteria->order = 'id DESC'; 
$incompleteBooking = Booking::model()->findAllByAttributes(array('is_deleted'=>NOTDELETED),$criteria); 
你想要什么