Hướng dẫn what is session in php why it is used? - Phiên trong php là gì tại sao nó được sử dụng?

Một phiên là một cách để lưu trữ thông tin [trong các biến] sẽ đượ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 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. Máy tính biết bạn là ai. Nó biết khi bạn bắt đầu ứng dụng và khi 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ẽ được 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.

Vì thế; Các biến phiên chứa thông tin về một người dùng duy nhất 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 lưu trữ vĩnh viễn, bạn có thể muốn lưu trữ dữ liệu trong cơ sở dữ liệu. If you need a permanent storage, you may want to store the data in a database.

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

Một phiên được bắt đầu với chức năng session_start[].

Các biến phiên được đặt với biến toàn cầu PHP: $ _Session.

Bây giờ, hãy tạo một trang mới có tên là "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ụ





Chạy ví dụ »

Lưu ý: Hàm session_start[] phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML. The session_start[] function must be the very first thing in your document. Before any HTML tags.

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

Tiếp theo, chúng tôi tạo một trang khác có tên là "demo_session2.php". Từ trang này, chúng tôi sẽ truy cập thông tin phiên 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 truyền riêng cho mỗi trang mới, thay vào đó chúng được truy xuất từ ​​phiên chúng tôi mở ở đầu mỗi trang [session_start[]].

Cũng lưu ý rằng tất cả các giá trị biến phiên được lưu trữ trong biến $ _Session toàn cầu:

Thí dụ





Chạy ví dụ »

Lưu ý: Hàm session_start[] phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.

Thí dụ





Chạy ví dụ »

Lưu ý: Hàm session_start[] phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.

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

Tiếp theo, chúng tôi tạo một trang khác có tên là "demo_session2.php". Từ trang này, chúng tôi sẽ truy cập thông tin phiên 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 truyền riêng cho mỗi trang mới, thay vào đó chúng được truy xuất từ ​​phiên chúng tôi mở ở đầu mỗi trang [session_start[]].

Thí dụ





Chạy ví dụ »

Lưu ý: Hàm session_start[] phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.

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

Thí dụ





Chạy ví dụ »

Lưu ý: Hàm session_start[] phải là điều đầu tiên trong tài liệu của bạn. Trước bất kỳ thẻ HTML.



Ví dụ sau đây cho thấy cách đăng ký một biến và cách liên kết chính xác với trang khác bằng SID.

HTMLSpecialchars [] có thể được sử dụng khi in SID để ngăn chặn các cuộc tấn công liên quan đến XSS.

Tại sao chúng ta sử dụng phiên trong PHP?php.ini file called session.save_path. Before using any session variable make sure you have setup this path.

Phiên Php được sử dụng để lưu trữ và truyền thông tin từ trang này sang trang khác tạm thời [cho đến khi người dùng đóng trang web]. Kỹ thuật phiên PHP được sử dụng rộng rãi trong các trang web mua sắm, nơi chúng tôi cần lưu trữ và truyền thông tin giỏ hàng, ví dụ: Tên người dùng, mã sản phẩm, tên sản phẩm, giá sản phẩm, vv từ trang này sang trang khác.

  • Mục đích của phiên là gì?

  • Mục đích phiên là một mô tả chung về các kết quả, mục tiêu hoặc thành tích mong muốn liên quan đến các cuộc họp hoặc tụ tập nhóm. Mục đích mô tả các kết quả dự kiến ​​được mong đợi của những người tham gia.PHPSESSID is automatically sent to the user's computer to store unique session identification string.

  • Tại sao các biến phiên được sử dụng?

Các biến phiên là các biến đặc biệt chỉ tồn tại trong khi phiên của người dùng với ứng dụng của bạn đang hoạt động. Các biến phiên là cụ thể cho mỗi khách truy cập vào trang web của bạn. Chúng được sử dụng để lưu trữ thông tin dành riêng cho người dùng cần được truy cập bởi nhiều trang trong một ứng dụng web.

Một phiên kết thúc khi người dùng mất trình duyệt hoặc sau khi rời khỏi trang web, máy chủ sẽ chấm dứt phiên sau một khoảng thời gian được xác định trước, thường là khoảng thời gian 30 phút.

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

Một phiên PHP dễ dàng bắt đầu bằng cách thực hiện cuộc gọi đến hàm session_start []. Hàm này lần đầu tiên kiểm tra xem một phiên đã được bắt đầu và nếu không có bắt đầu thì nó sẽ bắt đầu một. Nên đặt cuộc gọi đến session_start [] ở đầu trang.session_start[] function.This function first checks if a session is already started and if none is started then it starts one. It is recommended to put the call to session_start[] at the beginning of the page.

Các biến phiên được lưu trữ trong mảng kết hợp được gọi là $ _Session []. Các biến này có thể được truy cập trong suốt cuộc đời của một phiên.$_SESSION[]. These variables can be accessed during lifetime of a session.

Ví dụ sau bắt đầu một phiên sau đó đăng ký một biến có tên là bộ đếm được tăng lên mỗi khi trang được truy cập trong phiên.counter that is incremented each time the page is visited during the session.

Sử dụng hàm isset [] để kiểm tra xem biến phiên có được đặt hay không.isset[] function to check if session variable is already set or not.

Đặt mã này vào tệp Test.php và tải tệp này nhiều lần để xem kết quả -



   
   
      Setting up a PHP session
   
   
   
      
   
   

Nó sẽ tạo ra kết quả sau -

You have visited this page 1in this session.

Phá hủy một phiên PHP

Một phiên PHP có thể bị phá hủy bởi hàm session_destroy []. Hàm này không cần bất kỳ đối số nào và một cuộc gọi có thể phá hủy tất cả các biến phiên. Nếu bạn muốn phá hủy một biến phiên duy nhất thì bạn có thể sử dụng hàm Und [] để hủy bỏ biến phiên.session_destroy[] function. This function does not need any argument and a single call can destroy all the session variables. If you want to destroy a single session variable then you can use unset[] function to unset a session variable.

Dưới đây là ví dụ để giải phóng một biến duy nhất -

Đây là cuộc gọi sẽ phá hủy tất cả các biến phiên -

Bật phiên tự động

Bạn không cần gọi hàm start_session [] để bắt đầu phiên khi người dùng truy cập trang web của bạn nếu bạn có thể đặt biến.Auto_start biến thành 1 trong tệp php.ini.session.auto_start variable to 1 in php.ini file.

Phiên không có cookie

Có thể có một trường hợp khi người dùng không cho phép lưu trữ cookie trên máy của họ. Vì vậy, có một phương thức khác để gửi ID phiên đến trình duyệt.

Ngoài ra, bạn có thể sử dụng SID hằng số được xác định nếu phiên bắt đầu. Nếu máy khách không gửi cookie phiên thích hợp, nó có mẫu session_name = session_id. Nếu không, nó mở rộng sang một chuỗi trống. Vì vậy, bạn có thể nhúng nó vô điều kiện vào URL.

Ví dụ sau đây cho thấy cách đăng ký một biến và cách liên kết chính xác với trang khác bằng SID.


To continue click following link

Bài Viết Liên Quan

Chủ Đề