[英]Database update in laravel using Ajax
我正在按照本教程更新或编辑 Laravel 中的数据库表。 我已经实现了插入部分如下:
$(document).on('click', '.edit', function(){
var id = $(this).attr("id");
$('#form_output').html('');
$.ajax({
url:"{{route('ajax_data_manage.fetchdata')}}",
method:'get',
data:{id:id},
dataType:'json',
success:function(data)
{
$('#player_name').val(data.player_name);
$('#player_country').val(data.player_country);
$('#player_age').val(data.player_age);
$('#player_id').val(id);
$('#playerModal').modal('show');
$('#action').val('Edit');
$('.modal-title').text('Edit Data');
$('#button_action').val('update');
}
})
});
在控制器文件中:
function fetchdata(Request $request)
{
$id = $request->input('id');
$player = Player::find($id);
$output = array(
'player_name' => $player->player_name,
'player_country' => $player->player_country,
'player_age' => $player->player_age
);
echo json_encode($output);
}
我认为错误在于获取数据。 我在数据库中的 Player 表有三列(姓名、国家、年龄)以及表单组中文本框的 id 和名称:
<div class="form-group">
<label>Enter Player Name</label>
<input type="text" name="player_name" id="player_name" class="form-control" />
</div>
<div class="form-group">
<label>Enter Player Country</label>
<input type="text" name="player_country" id="player_country" class="form-control" />
</div>
<div class="form-group">
<label>Enter Player Age</label>
<input type="text" name="player_age" id="player_age" class="form-control" />
</div>
当我单击编辑按钮时,什么也没有发生。 我还编辑了web.php
文件
Route::get('ajaxdatamanage','AdminController@index')->name('ajax_data_manage');
Route::get('ajaxdatamanage/getdata', 'AdminController@getdata')->name('ajax_data_manage.getdata');
Route::post('ajaxdatamanage/postdata', 'AdminController@postdata')->name('ajax_data_manage.postdata');
Route::get('ajaxdatamanage/fetchdata', 'AdminController@fetchdata')->name('ajax_data_manage.fetchdata')
function fetchdata(Request $request)
{
$id = $request->input('id');
$player = Player::find($id);
$output = array(
'player_name' => $player->player_name,
'player_country' => $player->player_country,
'player_age' => $player->player_age
);
// try this
$update = Player::where('id',$id)->update($output);
// or
$player->player_name;
$player->player_country;
$player->player_age;
$player->save();
echo json_encode($player);
}
您将获得完整的演示,它将为您提供全面的帮助。
https://github.com/PriyankPanchal/AJAX-CRUD-Laravel
请使用上面的链接克隆项目,并在克隆后触发一些命令,如下所示。
1) composer update 2) 设置 env 文件并在 .env 文件中设置数据库详细信息。 3)php工匠迁移
希望这个演示项目能帮到你。 谢谢 PHPanchal
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.