Chúng ta có thể cập nhật các bản ghi bằng cách sử dụng facade DB với phương thức update (cập nhật). Cú pháp của phương thức update như trong bảng sau.
Cú pháp Update Records (Cập nhật bản ghi)
Cú pháp | int update(string $query, array $bindings = array()) |
Thông số |
|
Trả về | int |
Mô tả | Chạy câu lệnh cập nhật đối với cơ sở dữ liệu |
Ví dụ Update Records (Cập nhật bản ghi)
Quan sát ví dụ sau để hiểu thêm về cập nhật bản ghi
Bước 1: Thực hiện lệnh dưới đây để tạo một bộ điều khiển có tên là StudUpdateController.
php artisan make:controller StudUpdateController
Bước 2: Sau khi thực hiện thành công, bạn sẽ nhận được kết quả sau:
Bước 3: Sao chép mã sau vào tệp 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 "Record updated successfully.<br/>"; echo '<a href = "/edit-records">Click Here</a> to go back.'; } }
Bước 4: Tạo mới 1 stud_edit_view theo đường dẫn sau resources/views/stud_edit_view.blade.php và dán đoạn code sau vào nó
<html> <head> <title>View Student Records</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 }}'>Edit</a></td> </tr> @endforeach </table> </body> </html>
Bước 5: Tạo một tệp view theo đường dẫn sau resource/views/stud_update.php và sao chép đoạn mã sau vào tệp đó.
<html> <head> <title>Student Management | Edit</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>Name</td> <td> <input type = 'text' name = 'stud_name' value = '<?php echo$users[0]->Name; ?>'/> </td> </tr> <tr> <td colspan = '2'> <input type = 'submit' value = "Update student" /> </td> </tr> </table> </form> </body> </html>
Bước 6: Khái báo các route sau tại app/Http/routes.php.
Route::get('edit-records','StudUpdateController@index'); Route::get('edit/{id}','StudUpdateController@show'); Route::post('edit/{id}','StudUpdateController@edit');
Bước 7: Truy cập đường dẫn sau để cập nhật bản ghi trên database.
http://localhost:8000/edit-records
Bước 8: Kết quả sẽ như hình sau:
Bước 9: Nhấp vào liên kết chỉnh sửa trên bất kỳ bản ghi nào và bạn sẽ được chuyển hướng đến một trang nơi bạn có thể chỉnh sửa bản ghi cụ thể đó.
Bước 10: Chỉnh sửa và nhấn Update student. Kết quả sẽ xuất hiện như trong hình sau.
Bước 11: Nhấn click here để xem lại kết quả sau khi cập nhật: