06/04/2021, 14:45

Bài 05: Insert dữ liệu vào MySQL bằng PHP - PHP và MySQL

Thao tác Insert dữ liệu vào MySQL thường được sử dụng nhất khi bạn lâp trình backend. Ví dụ bạn xây dựng chương trình quản lý sinh viên thì trong admin bạn phải code các chức năng như thêm sinh viên, thêm lớp, thêm khoa, ... Tất cả những thao tác này ta gọi là Insert data vào MySQL. 1. Insert dữ ...

Thao tác Insert dữ liệu vào MySQL thường được sử dụng nhất khi bạn lâp trình backend. Ví dụ bạn xây dựng chương trình quản lý sinh viên thì trong admin bạn phải code các chức năng như thêm sinh viên, thêm lớp, thêm khoa, ... Tất cả những thao tác này ta gọi là Insert data vào MySQL.

1. Insert dữ liệu vào MySQL bằng PHP

Đối với MySQL để insert dữ liệu vào table thì ta sẽ sử dụng lệnh Insert, như với PHP ta cũng sử dụng lệnh đó để đưa dữ liệu vào trong MySQL.

Trước tiên chúng ta cần có một Database và table, bạn quay lại bài tạo table bằng PHP để xem cấu trúc database và table mà mình đã học nhé. Và đây chính là câu SQL insert của chung ta.

INSERT INTO News (title, content) 
VALUES ('tieu de', 'noi dung')

Đối với hai fields idadd_date mình không truyền dữ liệu vào là vì id là tăng tự động còn add_date là kiểu timestamp nên nó cũng tự động lấy giờ trong hệ thống để thêm vào.

Sau đây là 3 cách insert dữ liệu vào trong MySQL bằng cách sử dụng hai bộ thư viện MySQLi và PDO của PHP.

Sử dụng MySQLi Object-oriented:

// Tạo kết nối
$conn = new mysqli('localhost', 'root', 'vertrigo', 'Zaidap.comDemo');

// Kiểm tra kết nối
if ($conn->connect_error) {
    die("Kết nối thất bại: " . $conn->connect_error);
} 

// Câu SQL Insert
$sql = "INSERT INTO News (title, content) 
        VALUES ('tieu de', 'noi dung')";

// Thực hiện thêm record
if ($conn->query($sql) === TRUE) {
    echo "Thêm record thành công";
} else {
    echo "Lỗi: " . $sql . "<br>" . $conn->error;
}

// Ngắt kết nối
$conn->close();

Sử dụng MySQLi Procedural:

// Tạo kết nối
$conn = mysqli_connect('localhost', 'root', 'vertrigo', 'Zaidap.comDemo');

// Kiểm tra kết nối
if (!$conn) {
    die("Kết nối thất bại: " . mysqli_connect_error());
}

// Câu SQL Insert
$sql = "INSERT INTO News (title, content) 
        VALUES ('tieu de', 'noi dung')";

// Thực hiện thêm record
if (mysqli_query($conn, $sql)) {
    echo "Thêm record thành công";
} else {
    echo "Lỗi: " . $sql . "<br>" . mysqli_error($conn);
}

// Ngắt kết nối
mysqli_close($conn);

Sử dụng PDO:

try {
    // Tạo kết nối
    $conn = new PDO("mysql:host=localhost;dbname=Zaidap.comDemo", 'root', 'vertrigo');
    
    // Cấu hình exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    
    
    // Câu SQL Insert
    $sql = "INSERT INTO News (title, content) 
            VALUES ('tieu de', 'noi dung')";

    // Thực hiện thêm record
    $conn->exec($sql);

    echo "Thêm record thành công";
} 
catch (PDOException $e) {
    echo $e->getMessage();
}

// Ngắt kết nối
$conn = null;

2. Lời kết

Như vậy là mình đã giới thiệu xong ba cách thêm dữ liệu vào database MySQL bằng PHP, bài tiếp theo chúng ta sẽ tìm hiểu cách lấy giá trị ID tăng tự động của record vừa thêm đó.

0