ajaxでフォームを投稿したいと思います。私は私のコンソールでerrrorを取得:ajaxでLaravelフォーム投稿
は、リソースの読み込みに失敗しました:サーバーは500(内部サーバーエラー)の状態で応答し
を私はフォームを持っている:
{!! Form::open(array('url'=>'uren','method'=>'POST', 'id'=>'myform')) !!}
//inputs here etc..
{{ Form::button('Add', array('class' => 'btn btn-btn send-btn')) }}
{{ Form::close() }}
私のAjax:ルート(web.php)で
$(document).ready(function(){
$('.send-btn').click(function(){
$.ajax({
url: 'uren',
type: "post",
data: {
'werk': $('input[name="werk"]').val(),
'starttijd': $('input[name="starttijd"]').val(),
'eindtijd': $('input[name="eindtijd"]').val(),
'omschrijving': $('input[name="omschrijving"]').val(),
'_token': $('input[name="_token"]').val()},
success: function(data){
alert(data);
}
});
});
});
:
コントローラにはRoute::post('uren', 'User\[email protected]');
:
public function store() {
if (\Request::ajax()) {
if(Request::input('omschrijving') != '') {
$omschrijving = Request::input('omschrijving');
}else{
$omschrijving = '';
}
DB::table('uren')->insert(
[
'userID' => Auth::user()->id,
'datum' => Carbon\Carbon::now(),
'projectID' => Request::input('werk'),
'starttijd' => Request::input('starttijd'),
'eindtijd' => Request::input('eindtijd'),
'omschrijving' => $omschrijving
]
);
}
}
私はcsrf_tokenトークンを使用して何かをする必要があると思います。 500エラーを渡す。しかし、どうしたらいいですか?
[UPDATE] トークンを追加しました。トークンを返信して、alert
に表示することができます。しかし、私がDB::table....
を追加すると、それでも私に500のエラーが返されます。
[COMPLETE] 問題は私のクエリです。フィールドは空ですが、文字列でなければなりません。私はそれを解決した。
http://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax:より多くの情報についてはXFER -post-request – EddyTheDove
ajax POSTリクエストの[Laravel csrf token mismatch]の可能な複製(http://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax-post-request) – davejal
ありがとうあなたの答え。私は自分のコードにトークンを持っています。 Ajaxリクエストでコントローラに送信されたトークンに警告することができます。しかし、私はまだ 'DB :: table code'を追加すると500エラーが発生します。 –