Tạo bởi Trần Văn Điêp|
Học PHP

Xây dựng ứng dụng quản lý bán hàng bằng PHP Session và Cookie từ cơ bản đến nâng cao

1. login.php – Đăng nhập và tạo session người dùng

  • Tạo form đăng nhập gồm: usernamepassword.

  • Nếu người dùng nhập đúng thông tin (admin / 123):

    • Lưu $_SESSION['username'] = 'admin';

    • Tạo cookie user_login có thời hạn 10 phút lưu tên người dùng.

    • Chuyển hướng sang store.php.

  • Nếu sai, hiển thị thông báo “Invalid username or password.”


2. store.php – Hiển thị danh sách sản phẩm

  • Tạo mảng sản phẩm tĩnh (ví dụ):

    $products = [ 1 => ['name' => 'Laptop', 'price' => 1500], 2 => ['name' => 'Mouse', 'price' => 20], 3 => ['name' => 'Keyboard', 'price' => 35] ];
  • Hiển thị danh sách sản phẩm với nút “Add to Cart”.

  • Khi nhấn nút, gọi cart.php?action=add&id=product_id.


3. cart.php – Quản lý giỏ hàng bằng Session

  • Khi người dùng thêm sản phẩm:

    • Lưu sản phẩm vào $_SESSION['cart'] (key là id, value là quantity).

  • Hiển thị danh sách sản phẩm trong giỏ hàng: tên, số lượng, giá, tổng tiền.

  • Cho phép:

    • Cập nhật số lượng sản phẩm.

    • Xóa sản phẩm khỏi giỏ.

    • Nhấn “Checkout” để đến checkout.php.


4. checkout.php – Thanh toán

  • Kiểm tra xem $_SESSION['cart'] có dữ liệu không.

  • Nếu có, hiển thị tổng tiền và thông tin người dùng từ $_SESSION['username'].

  • Khi người dùng xác nhận thanh toán:

    • Ghi log đơn hàng ra file text hoặc hiển thị xác nhận.

    • Dọn dẹp session giỏ hàng (session_unset()session_destroy()).

    • Chuyển đến logout.php.


5. logout.php – Đăng xuất và hủy session

  • Gọi session_destroy() để kết thúc phiên làm việc.

  • Xóa cookie user_login.

  • Hiển thị thông báo: “You have successfully logged out.”

📚 Kết quả mong đợi sau bài tập:

  • Sinh viên hiểu rõ cách hoạt động của PHP Session và Cookie.

  • Có thể tạo ứng dụng có trạng thái đăng nhập và giỏ hàng động.

  • Biết cách bảo vệ session và quản lý dữ liệu tạm thời an toàn.

Phản hồi từ học viên

5

Tổng 0 đánh giá

Đăng nhập để làm bài kiểm tra

Chưa có kết quả nào trước đó