[英]updating database using AJAX in laravel
我在控制器中有以下代码
public function responcename(request $request) {
$data = request()->all();
//$name = $data['name'];
$user = Auth::user();
$userId = $user->email;
/////DB::update('update users set tutorial_detail = ? where email = ?',[$data['name'], $userId]);
//$tutorial_name = DB::select('select tutorial_detail from users where id = ?', array($userId));
return response()->json(['tutorialname' => $data['name']]);
}
路线是
Route::get('change_tutorialname', 'teacher@edittutorialname');
Route::post('/change_tutorialname','teacher@responcename');
当我评论$ user = Auth :: user(); $ userId = $ user->电子邮件; 它可以正常工作..但是当我取消注释时,下面的ajax显示错误消息是ajax代码
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$(".btn-submit").click(function(e){
e.preventDefault();
var name = $("input[name=name]").val();
$.ajax({
type:'POST',
url:'/change_tutorialname',
data: {name: name},
success:function(data){
$("form").css("display", "none");
alert(data.tutorialname);
},
error: function(){
alert("Record not deleted.")
},
});
});
代替
DB::update('update users set tutorial_detail = ? where email = ?',[$data['name'], $userId]);
尝试:
DB::statement('update users set tutorial_detail = ? where email = ?',[$data['name'], $userId]);
你冷尝试一下:
public function responcename(request $request) {
User::find(Auth::id())->update([
'name' => $request->name
]);
return response()->json(['tutorialname' => $request->name]);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.