🎓 BÀI TẬP DỰ ÁN THỰC TẾ – ỨNG DỤNG “Remember Me !!!”
🎯 Mục tiêu
Xây dựng một ứng dụng đăng nhập cơ bản có chức năng “Ghi nhớ tôi” (Remember Me), sử dụng session, cookie và các hàm tự định nghĩa để xử lý.
📋 Yêu cầu chức năng
1. Trang đăng nhập (login.php
)
- Form có:
- Trường nhập tên người dùng
- Checkbox “Ghi nhớ tôi”
- Nút Đăng nhập
- Khi người dùng đăng nhập:
- Lưu tên người dùng vào
$_SESSION
- Nếu chọn “Ghi nhớ tôi”, lưu thêm vào
cookie
(hết hạn sau 10 phút)
- Lưu tên người dùng vào
2. Trang chính (index.php
)
- Nếu đã đăng nhập (qua session hoặc cookie):
- Hiển thị: “Chào [Tên người dùng]!”
- Có nút “Đăng xuất”
- Nếu chưa đăng nhập:
- Redirect về
login.php
- Redirect về
3. Trang đăng xuất (logout.php
)
- Xóa session và cookie
- Quay về
login.php
4. Yêu cầu kỹ thuật
- Sử dụng
session_start()
đúng cách. - Ghi lại thời gian đăng nhập cuối cùng trong session và hiển thị trên
index.php
. - File
functions.php
gồm các hàm:greetUser($name)
: trả về chuỗi chàorememberMe($name)
: lưu cookierestoreSessionFromCookie()
: khôi phục session nếu cần
🧠 Yêu cầu mở rộng (nâng cao)
- Đếm số lần đăng nhập (dùng session hoặc cookie)
- Thông báo nếu cookie đã hết hạn
- Hiển thị thời gian còn lại của cookie
📁 Cấu trúc thư mục đề xuất
/remember-me-app/ ├── index.php ├── login.php ├── logout.php ├── functions.php └── style.css (tùy chọn)
✅ Kết quả mong đợi
- Người dùng có thể được ghi nhớ trong 10 phút
- Session hết vẫn có thể tự động khôi phục từ cookie
- Mô phỏng đúng chức năng “Remember Me” trên các trang thực tế