우리는 다음과 같은 DatePicker에서의 widge를 포함하는 검색 양식을 YII 프레임 워크를 사용하고 만들었습니다Where 절에있는 MySQL DateDiff?
이 위젯은 +/- 이일 지정된 값에서 availability_start_date가 사용자를 검색하는 데 사용되어야합니다<?php echo $form->labelEx($model, 'availability_start_date');?>
<?php
Yii::import('zii.widgets.jui.CJuiDatePicker');
$this->widget('zii.widgets.jui.CJuiDatePicker', array(
'name'=>'stattDate',
'options'=>array(
'showAnim'=>'fold',
),
'htmlOptions'=>array(
'style'=>'height:20px;'
)
));
?>
위 위젯에서.
if ($search_frm['availability_start_date']){
$join .= ' LEFT JOIN user_availability_start_date usd on u.id = usd.id';
$where .= 'AND usd.availability_start_date >= '.$search_frm
['availability_start_date'];
}
절 그냥 availability_start_date 위젯의 값보다 크거나 같은 경기를 묻는에 현재 논리 :
우리 UserController 조인 다음과 같은 논리를 가지고있다.
위의 WHERE 절을 수정하여 위젯의 값이 availability_start_date 값과 +/- 2 일 차이가 나는 레코드를 선택하려면 어떻게해야합니까?
업데이트 : 나는 다음과 같이 할 수있는 곳에 절을 개정했습니다
if ($search_frm['availability_start_date']){
$join .= ' LEFT JOIN user_availability_start_date usd on u.id = usd.id';
$where .= ' AND usd.availability_start_date >= DATE_ADD('.$search_frm.',
INTERVAL -2 DAY)
AND usd.availability_start_date <= DATE_ADD(' .$search_frm.', INTERVAL 2 DAY)';
}
내가 논리를 테스트 할 때 불행하게도, 기록이 기준을 충족하지 않는 반환됩니다. 폼이나 페이지에 오류가 발생하지 않습니다.
하나! – Matt