может опубликовать информацию о том, как фильтровать столбец метки времени в сетке (Ymd ч: м: с), используя средство выбора даты.моя модель ниже
public function search()
{
$criteria=new CDbCriteria();
$criteria->condition="time_up BETWEEN UNIX_TIMESTAMP('$this->time_up_from') AND UNIX_TIMESTAMP('$this->time_up_to')";
$criteria->compare('proc_id',$this->proc_id);
$criteria->compare('book_id',$this->book_id);
$criteria->compare('Project_name', $this->Project_name);
$criteria->compare('isbn_no', $this->isbn_no);
$criteria->compare('book_title',$this->book_title);
$criteria->compare('totalpage',$this->totalpage,true);
$criteria->compare('totaltime',$this->totaltime,true);
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
'pagination'=>array(
'pageSize'=>100
),
));
}
для нормального конкретного условия ее работы ниже условия
$criteria->condition = " time_up LIKE '$this->time_up%'";
для диапазона дат не работает я пробовал также wiki / 142 / в yiiсайт но бесполезно.Пожалуйста, помогите в этом. Или предоставьте некоторые другие методы для поиска поиска метки времени.
Мои данные из формы расширенного поиска
<div class=" wide form">
<?php $form=$this->beginWidget('CActiveForm', array(
'action'=>Yii::app()->createUrl($this->route),
'method'=>'get',
)); ?>
<div class="row">
<?php echo "Time UP from"; ?>
<?php $this->widget('zii.widgets.jui.CJuiDatePicker',
array(
'model'=>$model,
'name'=>'Process[time_up_from]',
// Model attribute filed which hold user input
'options'=>array(
'showAnim'=>'fold',
'dateFormat'=>'yy-mm-dd',),
'htmlOptions'=>array(
'style'=>'height:20px;width:100px',
'size'=>15,
//'value'=>date('Y-m-d'),
/*'onchange'=>"$.fn.yiiGridView.update('books-grid', {data: $(this).serialize()});" */),));?>
</div>
<?php echo "Time Up to"; ?>
<?php $this->widget('zii.widgets.jui.CJuiDatePicker',
array(
'model'=>$model,
'name'=>'Process[time_up_to]',
// Model attribute filed which hold user input
'options'=>array(
'showAnim'=>'fold',
'dateFormat'=>'yy-mm-dd',),
'htmlOptions'=>array(
'style'=>'height:20px;width:100px',
'size'=>15,
//'value'=>date('Y-m-d'),
/*'onchange'=>"$.fn.yiiGridView.update('books-grid', {data: $(this).serialize()});"*/ ),));?>
</div>
<?php echo CHtml::submitButton('Search'); ?>
ОТВЕТ НА ПРОБЛЕМУ
привет, я нашел ответ, это просто условие if перед условием критерия
`if(strlen($this->time_up_from) && strlen($this->time_up_to))
{
$criteria->condition="time_up BETWEEN UNIX_TIMESTAMP('$this->time_up_from') AND UNIX_TIMESTAMP('$this->time_up_to')";
}
теперь оно работает нормально.@ bool.dev Большое спасибо за ваши предложения. Большое спасибо.