Hướng dẫn PHP

TRANG CHỦ PHP Giới thiệu PHP Cài đặt PHP Cú pháp PHP Nhận xét PHP Các biến PHP PHP Echo / Print Các kiểu dữ liệu PHP Chuỗi PHP Số PHP Toán PHP Hằng số PHP Toán tử PHP PHP If ... Else ... Elseif Chuyển đổi PHP Vòng lặp PHP Các hàm PHP Mảng PHP PHP Superglobals PHP RegEx

Biểu mẫu PHP

Xử lý biểu mẫu PHP Xác thực biểu mẫu PHP Yêu cầu biểu mẫu PHP URL biểu mẫu PHP / E-mail Hoàn thành biểu mẫu PHP

PHP nâng cao

Ngày và giờ trong PHP Bao gồm PHP Xử lý tệp PHP Mở / Đọc tệp PHP Tạo / ghi tệp PHP Tải lên tệp PHP Cookie PHP Phiên PHP Bộ lọc PHP Bộ lọc PHP nâng cao Các chức năng gọi lại trong PHP PHP JSON Ngoại lệ PHP

PHP OOP

PHP OOP là gì Các lớp / đối tượng PHP Trình tạo PHP PHP Destructor Công cụ sửa đổi quyền truy cập PHP Kế thừa PHP Hằng số PHP Các lớp trừu tượng trong PHP Giao diện PHP Đặc điểm PHP Phương thức tĩnh trong PHP Thuộc tính tĩnh của PHP Không gian tên PHP Lặp lại PHP

Cơ sở dữ liệu MySQL

Cơ sở dữ liệu MySQL MySQL Connect MySQL Tạo cơ sở dữ liệu MySQL Tạo bảng MySQL Chèn dữ liệu MySQL Nhận ID cuối cùng MySQL Chèn Nhiều MySQL được chuẩn bị Dữ liệu chọn MySQL MySQL ở đâu MySQL Đặt hàng bởi MySQL Xóa dữ liệu Dữ liệu cập nhật MySQL Dữ liệu giới hạn MySQL

PHP XML

Trình phân tích cú pháp XML PHP Trình phân tích cú pháp PHP SimpleXML PHP SimpleXML - Nhận PHP XML Expat DOM XML PHP

PHP - AJAX

Giới thiệu về AJAX AJAX PHP Cơ sở dữ liệu AJAX AJAX XML Tìm kiếm trực tiếp AJAX Cuộc thăm dò ý kiến ​​của AJAX

Ví dụ về PHP

Ví dụ về PHP Trình biên dịch PHP PHP Quiz Bài tập PHP Chứng chỉ PHP

Tham chiếu PHP

Tổng quan về PHP Mảng PHP Lịch PHP Ngày PHP Thư mục PHP Lỗi PHP Ngoại lệ PHP Hệ thống tập tin PHP Bộ lọc PHP FTP PHP PHP JSON Từ khóa PHP PHP Libxml Thư PHP Toán PHP PHP Misc PHP MySQLi Mạng PHP Kiểm soát đầu ra PHP PHP RegEx PHP SimpleXML Luồng PHP Chuỗi PHP Xử lý biến PHP Trình phân tích cú pháp XML PHP PHP Zip Múi giờ PHP

Phiên PHP


Phiên là một cách để lưu trữ thông tin (trong các biến) để được sử dụng trên nhiều trang.

Không giống như cookie, thông tin không được lưu trữ trên máy tính của người dùng.


Phiên PHP là gì?

Khi bạn làm việc với một ứng dụng, bạn mở nó, thực hiện một số thay đổi và sau đó bạn đóng nó. Điều này giống như một Phiên họp. Máy tính biết bạn là ai. Nó biết khi nào bạn bắt đầu ứng dụng và khi nào bạn kết thúc. Nhưng trên internet có một vấn đề: máy chủ web không biết bạn là ai hoặc bạn làm gì, vì địa chỉ HTTP không duy trì trạng thái.

Các biến phiên giải quyết vấn đề này bằng cách lưu trữ thông tin người dùng để sử dụng trên nhiều trang (ví dụ: tên người dùng, màu yêu thích, v.v.). Theo mặc định, các biến phiên kéo dài cho đến khi người dùng đóng trình duyệt.

Cho nên; Các biến phiên giữ thông tin về một người dùng và có sẵn cho tất cả các trang trong một ứng dụng.

Mẹo: Nếu bạn cần một bộ nhớ lâu dài, bạn có thể muốn lưu trữ dữ liệu trong cơ sở dữ liệu .


Bắt đầu một phiên PHP

Một phiên được bắt đầu với session_start()hàm.

Các biến phiên được đặt bằng biến toàn cục PHP: $ _SESSION.

Bây giờ, hãy tạo một trang mới có tên "demo_session1.php". Trong trang này, chúng tôi bắt đầu một phiên PHP mới và đặt một số biến phiên:

Thí dụ

<?php
// Start the session
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Set session variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";
?>

</body>
</html>

Lưu ý: Hàmsession_start()phải là thứ đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML nào.



Nhận giá trị biến phiên PHP

Tiếp theo, chúng tôi tạo một trang khác có tên "demo_session2.php". Từ trang này, chúng tôi sẽ truy cập thông tin phiên mà chúng tôi đã đặt trên trang đầu tiên ("demo_session1.php").

Lưu ý rằng các biến phiên không được chuyển riêng lẻ đến từng trang mới, thay vào đó chúng được truy xuất từ ​​phiên mà chúng ta mở ở đầu mỗi trang ( session_start()).

Cũng lưu ý rằng tất cả các giá trị của biến phiên được lưu trữ trong biến $ _SESSION chung:

Thí dụ

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Echo session variables that were set on previous page
echo "Favorite color is " . $_SESSION["favcolor"] . ".<br>";
echo "Favorite animal is " . $_SESSION["favanimal"] . ".";
?>

</body>
</html>

Một cách khác để hiển thị tất cả các giá trị biến phiên cho phiên người dùng là chạy đoạn mã sau:

Thí dụ

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
print_r($_SESSION);
?>

</body>
</html>

Làm thế nào nó hoạt động? Làm sao nó biết đó là tôi?

Hầu hết các phiên đặt khóa người dùng trên máy tính của người dùng trông giống như sau: 765487cf34ert8dede5a562e4f3a7e12. Sau đó, khi một phiên được mở trên một trang khác, nó sẽ quét máy tính để tìm khóa người dùng. Nếu có một sự trùng khớp, nó sẽ truy cập vào phiên đó, nếu không, nó sẽ bắt đầu một phiên mới.


Sửa đổi một biến phiên PHP

Để thay đổi một biến phiên, chỉ cần ghi đè lên đó:

Thí dụ

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// to change a session variable, just overwrite it
$_SESSION["favcolor"] = "yellow";
print_r($_SESSION);
?>

</body>
</html>

Hủy một phiên PHP

Để xóa tất cả các biến phiên toàn cầu và hủy phiên, hãy sử dụng session_unset()session_destroy():

Thí dụ

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// remove all session variables
session_unset();

// destroy the session
session_destroy();
?>

</body>
</html>

Bài tập PHP

Kiểm tra bản thân với các bài tập

Bài tập:

Tạo một biến phiên có tên "favcolor".

session_start();
["favcolor"] = "green";