Tất cả những gì bạn phải làm là tạo một phiên để đăng nhập. Vì vậy, đây là thủ thuật. Mỗi lần bạn di chuyển từ chỉ mục đến trang chủ, bạn cần kiểm tra xem phiên đăng nhập có tồn tại hay không. Nếu không, hãy yêu cầu người dùng đăng nhập.
Kiểm tra xem người dùng đã đăng nhập chưa
<?PHP
session_start();
if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) {
header ("Location: login.php");
}
?>
Một lần nữa, trước tiên chúng ta bắt đầu một phiên PHP. Câu lệnh IF tiếp theo khá phức tạp. Nhưng chúng tôi đang kiểm tra hai điều:phiên người dùng được gọi là đăng nhập đã được thiết lập chưa? Và phiên này có phải là một chuỗi trống không?
!(isset($_SESSION['login']) && $_SESSION['login'] != '')
Phần đầu tiên là thế này:
!(isset($_SESSION['login'])
Để kiểm tra xem một phiên đã được thiết lập hay chưa, bạn có thể sử dụng hàm sẵn có là Isset. Chúng tôi đang sử dụng toán tử NOT trước nó. (Toán tử NOT là một dấu chấm than.) Vì vậy, chúng ta đang nói, "NẾU phiên KHÔNG được đặt". Phiên có thể được đặt, nhưng có thể có "1" trong đó. Chúng ta cũng cần kiểm tra xem phiên được gọi là đăng nhập có phải là một chuỗi KHÔNG trống hay không. Nếu cả hai điều này không thành công thì chúng tôi có thể chuyển hướng đến trang login.php, vì điều đó có nghĩa là người dùng chưa đăng nhập.
Đối với mọi trang trong trang web của bạn, nếu bạn có tập lệnh trên ở đầu trang, nó sẽ chuyển hướng người dùng nếu họ chưa đăng nhập. Bằng cách đó, bạn có thể bảo vệ các trang của mình khỏi những người không phải là thành viên. Nếu họ đã đăng nhập, họ sẽ có thể xem trang.
Đăng xuất Nếu bạn xem mã cho logout.php, bạn sẽ thấy như sau:
<?PHP
session_start();
session_destroy();
?>
Đây là tất cả những gì bạn cần để đăng xuất người dùng:bạn bắt đầu một phiên, sau đó đưa ra lệnh session_destroy. Tất cả những gì bạn cần là một liên kết đến trang này từ bất kỳ đâu trên trang web của bạn. Liên kết sẽ giống như thế này dưới dạng HTML của bạn:
<A HREF = logout.php>Log Out</A>
Khi người dùng nhấp vào liên kết này, họ sẽ được đưa đến trang có mã hủy phiên.