Bài 10: Delete dữ liệu MySQL bằng PHP
Lệnh delete dùng để xóa các records trong MySQL, lệnh này thường dùng trong backend đẻ xóa các tin tức, sản phẩm, chuyên mục. Cú pháp của lệnh này như sau:
DELETE FROM table_name WHERE some_columns = some_values
Thường trong ứng dụng website thì ta sẽ delete theo khóa chính bởi vì khóa chính tăng tự động nên truy vấn tìm kiếm sẽ nhanh hơn. Nếu bạn không truyền vào điều kiện where thì nó sẽ xóa hết tất cả data trong table ,vì vậy hãy kiểm tra kỹ điều kiện trước khi thực hiện lệnh này.
1. Delete dữ liệu với MySQLi
Chúng ta có hai trường hợp sử dụng đó là hướng đói tượng và hướng thủ tục truyền thống.
Sử dụng MySQLi Object-oriented:
// Kết nối $conn = new mysqli('localhost', 'root', 'vertrigo', 'FreetutsDemo'); // 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 delete $sql = "DELETE FROM News WHERE id=1"; // Thực hiện câu truy vấn if ($conn->query($sql) === TRUE) { echo "Xóa thành công"; } else { echo "Xóa thất bại: " . $conn->error; } $conn->close();
Sử dụng MySQLi Procedural:
// Kết nối $conn = mysqli_connect('localhost', 'root', 'vertrigo', 'FreetutsDemo'); // Kiểm tra kết nối if (!$conn) { die("Kết nối thất bại: " . mysqli_connect_error()); } // Câu SQL delete $sql = "DELETE FROM News WHERE id=1"; // Thực hiện câu truy vấn if (mysqli_query($conn, $sql)) { echo "Xóa thành công"; } else { echo "Xóa thất bại: " . mysqli_error($conn); } // ngắt kết nối mysqli_close($conn);
2. Delete dữ liệu với PDO
Cũng tương tự như những bài trước.
Bài viết này được đăng tại [free tuts .net]
try { // Kết nối $conn = new PDO("mysql:host=localhost;dbname=FreetutsDemo", 'root', 'vertrigo'); // Thiết lập exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Câu SQL $sql = "DELETE FROM News WHERE id=1"; // Thực thi câu truy vấn $conn->exec($sql); echo "Xóa thành công!"; } catch (PDOException $e) { echo 'Lỗi' . "<br>" . $e->getMessage(); } // Ngắt kết nối $conn = null;
3. Lời kết
Các ví dụ trên mình không sử dụng cơ chế prepared nên nó sẽ không bảo mật, vì vậy khi lập trình bạn nên sử dụng prepared nhé. Bài tiếp theo chúng ta sẽ tìm hiểu cách cập nhất dữ liệu bằng PHP.
Danh sách file tải về
Tên file tải về | Pass giải nén |
---|---|
Tải bài học định dạng PDF | freetuts.net hoặc gameportable.net |