YII 按照日期过滤不起作用,怎么回事?
YII 按照日期过滤不起作用,怎么回事?
模型
<?php
/**
* This is the model class for table "user".
*
* The followings are the available columns in table 'user':
* @property integer $id
* @property string $uname
*/
class Timefliter extends CActiveRecord
{
/**
* Returns the static model of the specified AR class.
* @param string $className active record class name.
* @return User the static model class
*/
public static function model($className=__CLASS__)
{
return parent::model($className);
}
/**
* @return string the associated database table name
*/
public function tableName()
{
return 't_time';
}
public $starttime;
public $endtime;
/**
* @return array validation rules for model attributes.
*/
public function rules()
{
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
array('id', 'safe'),
//array('id', 'numerical', 'integerOnly'=>true),
array('time', 'safe'),
// The following rule is used by search().
// Please remove those attributes that should not be searched.
array('id, time', 'safe', 'on'=>'search'),
);
}
/**
* @return array relational rules.
*/
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
);
}
/**
* @return array customized attribute labels (name=>label)
*/
public function attributeLabels()
{
return array(
'id'=> '编号',
'time'=> '时间',
);
}
/**
* Retrieves a list of models based on the current search/filter conditions.
* @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions.
*/
public function search()
{
// Warning: Please modify the following code to remove attributes that
// should not be searched.
$criteria=new CDbCriteria;
$criteria->compare('id',$this->id);
$criteria->compare('time','>='.$this->starttime);
$criteria->compare('time','<='.$this->endtime);
//是否开启模糊搜索,在后面true中实现
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
//'pagination'=>array('pagesize'=>$pagesize?pagesize:$page),
//'pagination'=>array('pagesize'=>$page),
));
}
}
<form method="post" >
<!--时间查询-->
开始时间
<?php
$this->widget('zii.widgets.jui.CJuiDatePicker',array(
'language'=>'zh_cn',
'name'=>'starttime',
'value'=>$query['start'] ? $query['start'] : Date('Y-m-d'),
'options'=>array(
'showAnim'=>'fold',
'showOn'=>'both',
'buttonImage'=>Yii::app()->request->baseUrl.'/images/calendar.gif',
//'maxDate'=>'new Date()',
'buttonImageOnly'=>true,
'dateFormat'=>'yy-mm-dd',
),
'htmlOptions'=>array(
'style'=>'height:18px',
'maxlength'=>8,
),
));
//echo $value;exit;
//http://blog.csdn.net/dreamzml/article/details/8227646
?>
结束时间
<?php
$this->widget('zii.widgets.jui.CJuiDatePicker',array(
'language'=>'zh_cn',
'name'=>'endtime',
'value'=>$query['end'] ? $query['end'] : Date('Y-m-d'),
'options'=>array(
'showAnim'=>'fold',
'showOn'=>'both',
'buttonImage'=>Yii::app()->request->baseUrl.'/images/calendar.gif',
//'maxDate'=>'new Date()',
'buttonImageOnly'=>true,
'dateFormat'=>'yy-mm-dd',
),
'htmlOptions'=>array(
'style'=>'height:18px',
'maxlength'=>8,
),
));
?>
<!--
$criteria->compare('create_time','<='.$this->endtime),//创建早间小于等于指定时间
这个名字name就是widget里面的name的数据库字段,将它放到搜索页面中指定前端名字,和后端数据库的字段在模型module里面指定compare的条件即可实现时间搜索
-->
<input type="submit" name="search" value="搜索"/>
</form>
Yii PHP 日期过滤
public function actionTimefliter()
{
$model=new Timefliter();
$this->render('timefliter',array('model'=>$model,));
}