Làm thế nào để đưa được dữ liệu vào trong cơ sở dữ liệu (Database) MySQL? Bạn đang tìm hiểu về Laravel Framework và muốn Insert một dữ liệu nào đó vậy thì bài viết này sẽ hướng dẫn bạn thực hiện điều đó.

Bước 1: Tạo một bảng là member trong Database là data (Trong xuyên suốt các bài viết mình luôn lấy CSDL là data)

Bước 2: Tạo một tập tin là InsertController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class InsertController extends Controller {
   public function insertform() {
      return view('insert');
   }
    
   public function insert_data(Request $request) {
      $name = $request->input('name');
      DB::insert('insert into member (username) values(?)',[$name]);
      echo "Ghi dữ liệu thành công!<br/>";
   }
}

Trong đoạn mã trên để ghi dữ liệu bạn tạo ra một funtion là insert_data. input(‘name’); đó chính là name sẽ lấy từ input trong tập tin insert.blade.php ở View.

(username) là cột trong bảng member.

Bước 2: Định tuyến đường dẫn trong routes (C:\xampp\htdocs\quachquynh\routes) tại web.php bằng cách thêm 2 dòng bên dưới vào

Route::get('insert','App\Http\Controllers\[email protected]');
Route::post('create','App\Http\Controllers\[email protected]_data');

Bước 3: Tai View sẽ thêm một tập tin là insert.blade.php

<html>
   <head>
      <title>Thêm dữ liệu vào Database</title>
   </head>

   <body>
      <form action ="create" method = "post">
         <input type = "hidden" name = "_token" value = "<?php echo csrf_token(); ?>">
         <table>
            <tr>
               <td>Name</td>
               <td><input type='text' name='name' /></td>
            </tr>
            <tr>
               <td colspan = '2'>
                  <input type = 'submit' value = "Add student"/>
               </td>
            </tr>
         </table>
      </form>
      
   </body>
</html>

Bây giờ sẽ truy cập theo đường dẫn đã định tuyến trong routes là http://localhost/quachquynh/public/insert

Khi nhấp vào nút submit nó sẽ action vào đường dẫn http://localhost/quachquynh/public/create thực thi lệnh tại function insert_data.

Cuối cùng vào vào Phpmyadmin mở bảng member để xem kết quả.

them-du-lieu-vao-database-laravel

Để thêm nhiều dữ liệu thì bạn sẽ thêm tương tự

public function insert_data(Request $request) {
    	$name = $request->input('name');
    	$pass = $request->input('pass');
        DB::insert('insert into member (username, password) values (?, ?)', [$name,$pass]);
      	echo "Ghi dữ liệu thành công!<br/>";
   }

them-du-lieu-vao-database-laravel-1

Lưu ý: Các cột trong database phải tương ứng là username và password nhé!

Trong insert.blade.php thêm một đoạn HTML

<tr>
   <td>Pass</td>
     <td><input type='text' name='pass' /></td>
</tr>

Cùng chủ đề

Bình luận!

Xin lưu ý rằng tất cả các bình luận đều được kiểm duyệt theo chính sách bảo mật và tất cả các liên kết đều là nofollow. KHÔNG sử dụng từ khóa trong trường tên. Hãy để lại một cuộc trò chuyện cá nhân và ý nghĩa. *