Trang chủKỹ Thuật Lập TrìnhPHPXây Dựng Chức Năng CRUD Hoàn Chỉnh Với PHP & MySQL –...

Xây Dựng Chức Năng CRUD Hoàn Chỉnh Với PHP & MySQL – Hướng Dẫn Chi Tiết Cho Người Mới

-

Giới Thiệu: CRUD Là Gì Và Vì Sao Quan Trọng?

Bạn mới học lập trình PHP và đang muốn xây dựng một ứng dụng thực tế đầu tay? Vậy thì CRUD chính là nền móng đầu tiên bạn cần nắm vững. CRUD là viết tắt của:

  • Create: Tạo mới dữ liệu
  • Read: Hiển thị dữ liệu
  • Update: Cập nhật dữ liệu
  • Delete: Xóa dữ liệu

Trong bất kỳ hệ thống nào — từ blog cá nhân cho đến trang quản lý doanh nghiệp — CRUD luôn là thành phần không thể thiếu. Nếu bạn làm tốt CRUD, nghĩa là bạn đã hiểu được cách lưu trữ, truy xuất và điều khiển thông tin trên web. Mà đó lại là linh hồn của một ứng dụng động.

Hãy tưởng tượng bạn đang xây dựng một hệ thống quản lý sản phẩm. Mỗi chức năng như thêm sản phẩm, chỉnh sửa giá, xem danh sách sản phẩm hay xoá sản phẩm đều là các thao tác CRUD.

Bài viết này sẽ đồng hành cùng bạn, từ khi tạo form nhập liệu đơn giản đến khi hoàn thiện toàn bộ vòng đời dữ liệu — một cách dễ hiểu, trực tiếp và thân thiện nhất có thể. Không dùng ngôn ngữ máy móc, không dàn trải khô khan – chỉ là bạn và những dòng code ý nghĩa, từng bước một.

Tạo CRUD trong lập trình PHP
Tạo CRUD trong lập trình PHP

Phần 1: Tạo Cơ Sở Dữ Liệu Và Cấu Trúc Bảng

Để bắt đầu, hãy mở phpMyAdmin và tạo một cơ sở dữ liệu mới với tên crud_app. Sau đó, chạy đoạn SQL dưới đây để tạo bảng products:

CREATE TABLE products (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(255) NOT NULL,
  price DECIMAL(10, 2) NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Bảng này khá đơn giản, đúng không? Mỗi sản phẩm gồm tên, giá và thời gian thêm vào hệ thống. Chúng ta sẽ sử dụng bảng này cho tất cả ví dụ CRUD ở phần tiếp theo.


Phần 2: Kết Nối PHP Với MySQL

Hãy tạo một file tên là connect.php:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$database = "crud_app";

$conn = new mysqli($servername, $username, $password, $database);

if ($conn->connect_error) {
  die("Kết nối thất bại: " . $conn->connect_error);
}
?>

Tệp này giúp chúng ta tránh lặp đi lặp lại đoạn code kết nối ở các file khác. Mỗi lần cần làm việc với DB, chỉ cần require 'connect.php'; là xong.


Phần 3: Chức Năng CREATE – Thêm Dữ Liệu Mới

Tạo file create.php và viết HTML form như sau:

<form action="create.php" method="POST">
  <input type="text" name="name" placeholder="Tên sản phẩm" required>
  <input type="number" name="price" placeholder="Giá" step="0.01" required>
  <button type="submit">Thêm sản phẩm</button>
</form>

Và xử lý dữ liệu phía dưới:

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  require 'connect.php';
  $name = $_POST['name'];
  $price = $_POST['price'];

  $stmt = $conn->prepare("INSERT INTO products (name, price) VALUES (?, ?)");
  $stmt->bind_param("sd", $name, $price);
  $stmt->execute();
  header("Location: index.php");
}

Phần 4: Chức Năng READ – Hiển Thị Danh Sách Sản Phẩm

Tạo file index.php:

require 'connect.php';
$result = $conn->query("SELECT * FROM products ORDER BY created_at DESC");

echo "<a href='create.php'>Thêm sản phẩm mới</a><hr>";
while ($row = $result->fetch_assoc()) {
  echo $row['name'] . " - " . $row['price'] . " đ ";
  echo " <a href='edit.php?id=".$row['id']."'>Sửa</a> | ";
  echo "<a href='delete.php?id=".$row['id']."'>Xoá</a><br>";
}

Giờ bạn có thể thấy toàn bộ danh sách sản phẩm được hiển thị ngay trên trình duyệt.


Phần 5: Chức Năng UPDATE – Cập Nhật Dữ Liệu

Tạo file edit.php:

require 'connect.php';
$id = $_GET['id'];
$result = $conn->query("SELECT * FROM products WHERE id=$id");
$product = $result->fetch_assoc();

Form hiển thị dữ liệu cần sửa:

<form method="POST">
  <input type="text" name="name" value="<?= $product['name'] ?>">
  <input type="number" name="price" value="<?= $product['price'] ?>">
  <button type="submit">Cập nhật</button>
</form>

Xử lý dữ liệu POST:

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
  $name = $_POST['name'];
  $price = $_POST['price'];
  $stmt = $conn->prepare("UPDATE products SET name=?, price=? WHERE id=?");
  $stmt->bind_param("sdi", $name, $price, $id);
  $stmt->execute();
  header("Location: index.php");
}

Phần 6: Chức Năng DELETE – Xoá Sản Phẩm

Tạo file delete.php:

require 'connect.php';
$id = $_GET['id'];
$stmt = $conn->prepare("DELETE FROM products WHERE id=?");
$stmt->bind_param("i", $id);
$stmt->execute();
header("Location: index.php");

Vậy là bạn đã có đầy đủ chức năng CRUD rồi đó!


Câu Hỏi Thường Gặp (FAQ)

CRUD là gì trong lập trình?

CRUD là viết tắt của Create, Read, Update, Delete – bốn thao tác cơ bản nhất với dữ liệu trong mọi ứng dụng.

Tại sao nên bắt đầu học PHP CRUD trước khi học framework?

Vì PHP thuần giúp bạn hiểu bản chất, không phụ thuộc vào công cụ. Sau này chuyển sang Laravel hay bất kỳ framework nào cũng sẽ dễ hơn.

Có thể thêm tính năng tìm kiếm không?

Tất nhiên. Chỉ cần sử dụng LIKE trong SQL và thêm một form tìm kiếm đơn giản.

Làm sao để bảo vệ dữ liệu người dùng?

Dùng prepared statements (đã áp dụng ở trên), xác thực dữ liệu đầu vào, và tránh SQL injection.


Kết Luận

Xây dựng chức năng CRUD hoàn chỉnh là bước đầu tiên để bạn làm chủ lập trình web với PHP. Hãy bắt đầu đơn giản, hiểu rõ từng dòng lệnh, và luyện tập thật nhiều.

Đừng sợ sai. Mỗi lần sửa lỗi thành công là bạn đang tiến bộ hơn.

Mình tin rằng sau bài viết này, bạn hoàn toàn có thể tự tin xây dựng ứng dụng nhỏ như quản lý công việc, sản phẩm, hay sổ tay cá nhân bằng PHP và MySQL. Còn chờ gì nữa — bật VSCode lên và bắt tay code ngay thôi!

Chúc bạn thành công!

🔗 Liên Kết Ngoài Tham Khảo

Xem thêm:

🔗 Viết Chương Trình Đầu Tiên Với PHP: Hướng Dẫn Dành Cho Người Mới Bắt Đầu 2025

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây

bài viết mới nhất

HỌC LẬP TRÌNH AI: LỘ TRÌNH, KỸ NĂNG VÀ CƠ HỘI NGHỀ NGHIỆP (2025)

Giới Thiệu Về AI (Artificial Intelligence)Trong những năm gần đây, AI - Trí tuệ nhân tạo không còn là khái niệm xa lạ mà đã...

Hiểu Và Áp Dụng Mô Hình MVC: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao (2025)

Giới Thiệu Về Mô Hình MVC MVC là gì? MVC là viết tắt của Model – View – Controller, một mô hình kiến trúc phần mềm giúp...

Hướng Dẫn Tăng Traffic Cho Website Hiệu Quả Nhất [Cập Nhật 2025]

Giới Thiệu Về Traffic Website Traffic Là Gì? Traffic, hiểu một cách đơn giản, chính là lượng người truy cập vào website của bạn. Tưởng tượng website...

Học Lập Trình Hướng Đối Tượng (OOP): Hướng Dẫn Từ A Đến Z Cho Người Mới Bắt Đầu 2025

Giới thiệu về lập trình hướng đối tượng (OOP)Nếu bạn đang bước vào thế giới lập trình và cảm thấy rối ren giữa hàng tá...

Theo dõi chúng tôi

0Thành viênThích

bài viết phổ biến