我要發佈使用Ajax的形式。我得到一個errror在我的控制檯:Laravel形式後使用Ajax
無法加載資源:服務器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:
$(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);
}
});
});
});
在路線(web.php):
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 [對AJAX POST請求Laravel CSRF令牌不匹配]的-post請求 – EddyTheDove
可能的複製(http://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax-post-request) – davejal
感謝你的答案。我現在在代碼中有令牌。我可以通過Ajax請求提醒已發送給我的控制器的令牌。但我仍然得到500錯誤,當我添加了'DB ::表code' –