使用DB::update()方法更新记录。 DB::update()方法的语法如下表中所示。
| 语法 | int update(string $query, array $bindings = array()) |
|---|---|
| 参数 |
|
| 返回值 | int |
| 描述 |
在数据库上运行一个更新语句
|
示例
第1步- 执行以下命令来创建一个名为 StudUpdateController 的控制器。
php artisan make:controller StudUpdateController
第2步 - 成功执行后,您会收到以下输出 -


第3步 - 将以下代码复制到文件 - app/Http/Controllers/StudUpdateController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class StudUpdateController extends Controller {
public function index(){
$users = DB::select('select * from student');
return view('stud_edit_view',['users'=>$users]);
}
public function show($id) {
$users = DB::select('select * from student where id = ?',[$id]);
return view('stud_update',['users'=>$users]);
}
public function edit(Request $request,$id) {
$name = $request->input('stud_name');
DB::update('update student set name = ? where id = ?',[$name,$id]);
echo "更新记录成功.<br/>";
echo '<a href = "/edit-records">点击这里</a> 返回';
}
}
第4步 - 创建一个名为 resources/views/stud_edit_view.blade.php 的视图文件,并复制下面的代码到此文件中。
resources/views/stud_edit_view.blade.php
<html>
<head>
<title>查看学生记录</title>
</head>
<body>
<table border = "1">
<tr>
<td>ID</td>
<td>Name</td>
<td>Edit</td>
</tr>
@foreach ($users as $user)
<tr>
<td>{{ $user->id }}</td>
<td>{{ $user->name }}</td>
<td><a href = 'edit/{{ $user->id }}'>编辑</a></td>
</tr>
@endforeach
</table>
</body>
</html>
第5步 - 创建一个名为 resources/views/stud_update.php 的另一个视图文件,并复制下面的代码放入下面的文件中。
resources/views/stud_update.php
<html>
<head>
<title>编辑 | 学生管理</title>
</head>
<body>
<form action = "/edit/<?php echo $users[0]->id; ?>" method = "post">
<input type = "hidden" name = "_token" value = "<?php echo csrf_token(); ?>">
<table>
<tr>
<td>名字</td>
<td>
<input type = 'text' name = 'stud_name'
value = '<?php echo$users[0]->name; ?>'/>
</td>
</tr>
<tr>
<td colspan = '2'>
<input type = 'submit' value = "更新学生信息" />
</td>
</tr>
</table>
</form>
</body>
</html>
第6步 - 添加以下行到文件 - app/Http/routes.php.
app/Http/routes.php
Route::get('edit-records','StudUpdateController@index');
Route::get('edit/{id}','StudUpdateController@show');
Route::post('edit/{id}','StudUpdateController@edit');
第7步 - 请访问以下网址数据库中更新记录。
http://localhost:8000/edit-records
第8步 - 输出结果如下图所示


步骤9- 点击记录"编辑"链接,将被重定向到一个页面,可以编辑特定的记录。
第10步 - 输出如下面图所示。


第11步 - 编辑这条记录后,会看到一个提示图如下图所示。


上一篇:
Laravel检索查询数据
下一篇:
Laravel删除数据
