Php 如何使用AJAX和JSON显示所有记录

Php 如何使用AJAX和JSON显示所有记录,php,ajax,json,laravel,Php,Ajax,Json,Laravel,我使用的是Laravel4.2.0。我想创建表单搜索, 以下是我在blade.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'

我使用的是Laravel4.2.0。我想创建表单搜索, 以下是我在blade.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]);