Laravel - 用ajax获取两个日期之间的记录

问题描述:

我使用Laravel,我想在两个日期之间得到记录。在前端我使用daterangepicker和我写的:Laravel - 用ajax获取两个日期之间的记录

$('#reportrange').on('apply.daterangepicker', function(ev, picker) { 
    var start = picker.startDate.format('YYYY-MM-DD'); 
    var end = picker.endDate.format('YYYY-MM-DD'); 

$.ajaxSetup({ 
       headers: { 
        'X-XSRF-Token': $('meta[name="_token"]').attr('content') 
       } 
      }); 

      $.ajax({ 
     type: "POST", 
       url : '{{url()}}/getOrders', 
data: {start: start, end: end}, 
       cache : false, 

       beforeSend : function() { 
        console.log('krece'); 
       }, 

       success : function(data) { 
        console.log(data); 

       }, 

       error : function() { 

       } 
      }); 


}); 

,所以我尝试发送的开始和结束日期之间,并在Laravel获取日期我:

路线:

Route::post('/getOrders', '[email protected]'); 

,并在OrdersController:

public function getOrders(Request $request) { 
    $start = $request->start; 
    $end = $request->end; 

//ALSO NEED QUESRY WHICH WILL FETCH ROWS BETWEEN DATES 
//$orders = Auth::user()->orders()->get(); ... ... 

    return $orders; 

    } 

现在当我在daterangepicker中选择一些日期我得到:

POST http://localhost:8888/getOrders 500 (Internal Server Error) 

什么问题?

关在头五言我把:

<meta name="csrf-token" content="{{ csrf_token() }}" /> 

如何获得日期间记录第i个Laravel和jQuery AJAX?

+0

created_at是订单表中的comlumn名称... –

您可以使用whereBetween()取得日期之间的结果:

$orders = Auth::user() 
      ->orders() 
      ->whereBetween('created_at', [$start_date, $end_date]) 
      ->get(); 

希望这有助于!

对于查询,你可以做:

$orders = Auth::user()->orders() 
         ->whereBetween('created_at', array($start, $end)) 
         ->get(); 

而对于500 (Internal Server Error)您可以检查您laravel.log文件。

+0

laravel.log说:...... te \ Pipeline \ Pipeline.php(103):call_user_func(Object(Closure),Object(Illuminate \ Http \请求)) #19 C:\ wamp \ www \ dine \ vendor \ laravel \ framework \ src \ Illuminate \ Foundation \ Http \ Kernel.php(122):Illuminate \ Pipeline \ Pipeline-> then(Object(Closure)) (Illuminate \ Http \ Kernel.php)(87):Illuminate \ Foundation \ Http \ Kernel-> sendRequestThroughRouter(Object(Illuminate \ Http \ (): #21 C:\ wamp \ www \ dine \ public \ index.php(54):Illuminate \ –

+0

这个错误在评论中不可读。您可以将它添加到您的伫列中,或者图片也可以使用。 –