yii?CDbCriteria
程序员文章站
2022-04-22 10:24:45
...
选择 Date Form 和 Date To,点 Search按钮,会查询出这两个日期间的数据 public function search() { $criteria = new CDbCriteria; if(isset($_GET['date1'])&&isset($_GET['date2'])){ $criteria->addBetweenCondition('news_date',$_GET['date1'], $_GET['date2']); } //这个功能已经实现 //现在的问题是:如果用户只选择了 Date Form,就显示Date Form 这个日期之后的所有数据 // 只选择了 Date To就显示Date To 这个日期之前的所有数据 return new CActiveDataProvider($this, array( 'criteria' => $criteria, )); }
回复讨论(解决方案)
给你代码,几乎差不多
public function failureCat() { $criteria = new CDbCriteria; $criteria->compare('t.failItem', $this->failItem); $criteria->compare('logInfo.logProcess', $this->failStation); $criteria->compare('logInfo.logUpdate', '>=' . $this->dateToDatetime($this->startDate, 1)); $criteria->compare('logInfo.logUpdate', 'dateToDatetime($this->endDate)); $criteria->with = array('logInfo'); return new CActiveDataProvider('TestLogFail', array( 'pagination' => array( 'pageSize' => Yii::app()->params['pageSize'], ), 'criteria' => $criteria, 'sort' => array( 'defaultOrder' => 'logInfo.logUpdate desc', ), )); }