2016-04-26 2 views
0

Ich versuche, Ajax Aufruf an den Controller zu speichern Daten, aber es zeigt Fehler im Netzwerk. meine Jquery ist:Ajax Post-Methode mit 500 internen Server Fehler

$('document').ready(function(){ 
     $('#getype th button').click(function(e){ 
     e.preventDefault(); 
     var a = $(this).val(); 
     var b = $(this).text(); 
     $.get("{{url('gettypes')}}",{id:a}, function(data){ 
     $('#sample').empty(); 
      for (var i = 0; i < data.length; i++) { 
       drawRow(data[i]); 
      } 
      function drawRow(rowData) { 
       var row = $("<th />") 
       row.empty(); 
       $("#sample").append(row); 
       row.append($("<button id='type' class='btn btn-info' value='"+ rowData.ty_id +"'>" + rowData.ty_name + "</button>"));     
      }    
      $('#sample button').on('click', function(e){ 
       e.preventDefault(); 
       var c= $(this).val(); 
       var d = $(this).text(); 
       $.get("{{url('getdish')}}", {id:c},function(data){ 
       $('#dishes').empty(); 
       for (var i = 0; i < data.length; i++) { 
        drawRow(data[i]); 
       } 
       function drawRow(rowData) { 
        var row = $("<th />") 
        row.empty(); 
        $("#dishes").append(row); 
        row.append($("<button id='dish' class='btn' value='"+ rowData.item_id +"'>" + rowData.item_name + "</button>"));     
       } 
       $('#dishes button').click(function(){ 
        var e = $(this).val(); 
        var f = $(this).text(); 
        $.post("{{url('postdata')}}", {cname:b,cid:a,tname:d,tid:c,did:e,dname:f}, function(data){ 
       console.log(data); 
       }); 
      }); 
      }); 
     }); 
    }); 
    }); 
}); 

meine Route: Route::post('postdata','[email protected]');

und mein Controller:

public function postdata(Request $request) 
{ 
    $data = $request->all(); 
    echo $data; 
} 

, was das Problem ist genau so, wie ich als auch Ajax in Laravel bin hier ?? Vielen Dank.

+0

bitte posten, was Sie –

+0

versucht haben, welche Fehler Sie bekommen? – Abbasi

+3

Sie zeigen clientseitigen Code, aber Sie sollten serverseitigen (Laravel) Code untersuchen, um 500 interne Serverfehler zu finden. – MarcoS

Antwort

0

Willkommen in Laravel!

Sie müssen versuchen, diese Methode auf die Laravel Dump zu ändern:

public function postdata(Request $request) 
{ 
    $data = $request->all(); 
    {{ dump($data) }} 

    //return $data; 
} 

Ich denke, dass das Problem ist die Art und Weise Sie die Funktion nutzen, die meisten Funktionen in Laravel Daten zurückgeben muss, Sie versuchen zu echo $ Daten.

Wenn Sie versuchen, sind zu {{ dump($data) }} (dies wird echo alle Daten innerhalb einer Variablen) wird es zeigen Sie alle $data und danach können Sie return $data; Kommentar aus.


Hoffe, das funktioniert!

Weitere Informationen unter: https://laravel.com/docs/5.2/controllers