Session trong PHP
Session trong PHP được nhận biết bởi session ID gán cho mỗi Browser. Khi Browser mở ra ứng với trang web bất kỳ của website, session ID có giá trị là một dãy số ngẫu nhiên được lưu trữ trên phía Client.
Session ID này có chu kỳ sống cho đến khi chúng hết hạn sử dụng (Expiry), bạn có thể truyền giá trị của Session ID với URL hay ghi chúng raCookie.
Chú ý: Thời gian hết hạn sử dụng của session do cấu hình của trình chủ web server quy định.
Session ID là thông tin duy nhất lưu trữ trên client side, các biến session được lưu trữ trong một tập tin dạng text trên Server.
Ngoài Session ID, bạn có thể khởi tạo và sử dụng một số session do bạn khai báo, tất cả session này có giá trị cho mỗi người dùng khi họ truy cập website.
Để sử dụng Session trước tiên bạn cần khởi động chúng. Trong trường hợp khởi động, nếu chưa có Session ID thì lập tức Session ID sẽ được tạo ra. Trong trường hợp Session ID đã tồn tại, chúng sẽ được nạp vào biến session và bạn có thể sử dụng chúng.
Biến Session sẽ hết hiệu lực khi nó hết hạn, người dùng đóng Browser đang duyệt trang web đó. Ngoài ra bạn có thể sử dụng khai báo xóa sổ hay hủy bỏ biến Session đó.
Cú pháp khởi động Session.
<?php
session_start();
?>Lưu ý: Bạn nên đặt session_start(); trên cùng của code trong trang web.
Đăng ký biến Session.
<?php
session_start();
$name="Mai Trang";
session_register("name");
?>Trong ví dụ trên một biến Session name đã được đăng ký. Biến session này có giá trị là: "Mai Trang".
Sử dụng biến Session.
<?php
session_start();
$name="Mai Trang";
session_register("name");
echo "Name: ".$_SESSION['name'];
?>Trong ví dụ trên, chúng tôi đã đăng ký một biến session và hiển thị giá trị của biến đó.
Kết quả của ví dụ như sau:
Name: Mai Trang. Truyền và nhận Session.
Trong ví dụ này, chúng tôi sẽ sử dụng 2 trang: page01.php và page02.php. Trang page01.php có nhiệm vụ khởi tạo và đăng ký biến session. Trangpage02.php có nhiệm vụ nhận về biến session và hiển thị giá trị của Session đó.
Trang page01.php.<?php
session_start();
$name="Mai Trang";
$email=" maitrang022@yahoo.com ";
session_register("name");
session_register("email");
?>
<a href="/page02.php">Click</a> Trang page02.php.<?php session_start(); ?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body>
Hiển thị giá trị của session.<br />
<?php
echo "Name: ".$_SESSION['name']."<br/>";
echo "Email: ".$_SESSION['email'];
?>
</body>
Kết quả của ví dụ trên sẽ như sau:
Hiển thị giá trị của session.
Name: Mai Trang
Email: maitrang022@yahoo.com
Hủy Session.
Có 2 cách hủy Session: Hủy 1 session hoặc Hủy toàn bộ Session.
unset($_SESSION['email']); //Hủy Session có tên: email
session_destroy(); // Hủy tất cả session.
Comments[ 0 ]
Đăng nhận xét