我使用Laravel 4.2.0。 我想创建表单搜索,这是我在刀片中的代码.php :
var date1 = $('[name=date1]').val();
var date2 = $('[name=date2]').val();
$.ajax({
type: 'POST',
url: "{{URL::to('filterCode')}}",
data: "date1="+date1+"&date2="+date2,
dataType: 'json',
success: function(data){
console.log(data.code);
}
});
这是代码过滤器控制器中的代码:
$date1 = Input::get('date1');
$date2 = Input::get('date2');
$filter = DB::table('orders')
->whereBetween('orders.date',array($date1,$date2))
->get();
foreach ($filter as $f) {
$data = array('code' => $f->code);
echo json_encode($data);
}
数据库中的记录 :
----------------------
| code | date |
----------------------
| A001 | 2015-01-08 |
----------------------
| A002 | 2015-01-18 |
----------------------
| A003 | 2015-01-20 |
----------------------
如果我选择日期 2015-01-08 到 2015-01-10,它将显示代码 A001。如果我选择日期 2015-01-08 到 2015-01-18,它应该显示代码 A001 直到 A002。但它没有显示任何东西。你可以帮我吗?
在控制器上尝试此操作。
$date1 = Input::get('date1');
$date2 = Input::get('date2');
$filter = DB::table('orders')
->whereBetween('date',array($date1,$date2))
->get();
$data = [];
foreach ($filter as $f) {
$data = array_add($data, 'code', $f->code);
}
return Response::json(['data' => $data]);