【发布时间】:2017-02-24 06:57:24
【问题描述】:
我正在尝试在 laravel 中使用 ajax 更新我的数据库。当我单击按钮(切换按钮)时,它应该将数据库启用列从 1 更新为 0。
这是视图中编写的脚本
$(".toggle-btn").change(function() {
var id = $(this).attr('name'); // $(this) refers to button that was clicked
$.ajax({
url: '/adminpanel/dviulaan/stt',
method: "post",
data: {'id' : id} ,
dataType: "json",
});
});
这是我的路线
Route::post('adminpanel/dviulaan/stt', 'AdminDvAnnouncement@status');
这里是控制器功能
public function status()
{
$id = Input::all();
if (Request::ajax()) {
DvAnnouncement::where('announcement_id', $id)->update(
[
'enable' => '0',
'user_updated' => Auth::user()->id,
'updated_at' => new DateTime,
]);
}
$response = array(
'status' => 'success',
'msg' => 'Option created successfully',
);
return Response::json( $response );
}
当我单击按钮时,它会在控制台中显示以下错误
POST http://localhost/adminpanel/dviulaan/stt 500 (Internal Server Error)
请帮我找出错误。
我什至改变了控制器方法如下
public function status(Request $request)
{
$id = Input::get('id');
if (Request::ajax()) {
DvAnnouncement::where('announcement_id', $id)->update(
[
'enable' => '0',
'user_updated' => Auth::user()->id,
'updated_at' => new DateTime,
]);
}
$response = array(
'status' => 'success',
'msg' => 'Option created successfully',
);
return Response::json( $response );
}
【问题讨论】:
-
这意味着你的 PHP 失败了。查看服务器上的错误日志以获取更多信息。
-
我很困惑。除了这个,一切都很好。
-
如果您阅读服务器的错误日志,您会变得不那么困惑。 ¯\_(ツ)_/¯
-
您只发布了错误的最后一行,理想情况下我们需要第一行!
-
[2016-10-15 00:06:56] local.ERROR: C:\xampp\htdocs\adducity\vendor\laravel\framework\src\ 中的异常 'Illuminate\Session\TokenMismatchException' Illuminate\Foundation\Http\Middleware\VerifyCsrfToken.php:67
标签: javascript php jquery ajax laravel-5.2