Insert Into MySQL bằng PHP

Câu lệnh INSERT INTO được sử dụng để chèn bản ghi mới vào bảng cơ sở dữ liệu.

Chèn dữ liệu vào bảng cơ sở dữ liệu

Câu lệnh INSERT INTO được sử dụng để thêm bản ghi mới vào bảng cơ sở dữ liệu.

Cú pháp

INSERT INTO table_name
VALUES (value1, value2,...)

Bạn cũng có thể quy định cột mà bạn muốn chèn dữ liệu vào đó:

INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,...)

Ghi chú:Câu lệnh SQL không nhạy cảm với chữ hoa thường. INSERT INTO và insert into là giống nhau.

Để PHP thực thi câu lệnh này, chúng ta phải sử dụng hàm mysql_query(). Hàm này được sử dụng để gửi truy vấn hoặc lệnh đến kết nối MySQL.

Ví dụ

Trong các chương trước, chúng ta đã tạo một bảng có tên là "Persons" với ba cột: "Firstname", "Lastname" và "Age". Chúng ta sẽ sử dụng bảng này trong ví dụ này. Ví dụ sau đây thêm hai bản ghi mới vào bảng "Persons":

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Không thể kết nối: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Peter', 'Griffin', '35')");
mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Glenn', 'Quagmire', '33')");
mysql_close($con);
?>

Chèn dữ liệu từ biểu mẫu vào cơ sở dữ liệu

Hiện tại, chúng ta tạo một biểu mẫu HTML có thể chèn bản ghi mới vào bảng "Persons".

Đây là biểu mẫu HTML này:

<html>
<body>
<form action="insert.php" method="post">
Tên: <input type="text" name="firstname" />
Họ: <input type="text" name="lastname" />
Tuổi: <input type="text" name="age" />
<input type="submit" />
</form>
</body>
</html>

Khi người dùng nhấn nút gửi trong biểu mẫu HTML trong ví dụ trên, dữ liệu biểu mẫu sẽ được gửi đến "insert.php". Tệp "insert.php" kết nối với cơ sở dữ liệu và lấy giá trị từ biểu mẫu thông qua biến $_POST. Sau đó, hàm mysql_query() thực hiện lệnh INSERT INTO, một bản ghi mới sẽ được thêm vào bảng cơ sở dữ liệu.

Dưới đây là mã của trang "insert.php":

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Không thể kết nối: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
if (!mysql_query($sql,$con))
  {
  die('Lỗi: ' . mysql_error());
  }
echo "1 bản ghi đã thêm";
mysql_close($con)
?>