Tự học lập trình PHP

  • Hướng dẫn Session trong PHP

    Session trong PHP tạo một tệp trong một thư mục tạm thời trên máy chủ nơi các biến session được đăng ký và giá trị của chúng được lưu trữ. Dữ liệu này sẽ có sẵn cho tất cả các trang trên trang web trong lần truy cập đó. Bài hôm nay chúng ta sẽ tiếp tục tìm hiểu về Session trong PHP là gì? Hướng dẫn code Session trong PHP.

    1. Session trong PHP là gì?

    Khi bạn làm việc với một ứng dụng, bạn bắt đầu với việc mở nó, thực hiện một số thay đổi, và sau đó bạn đóng nó lại. Điều bạn vừa thực hiện giống như một session. Máy tính biết bạn là ai, nó biết khi bạn bắt đầu ứng dụng và 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.

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

    Vì thế, biến session trong PHP sẽ lưu giữ 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.

    2. Bắt đầu một Session trong PHP

    Một Session trong PHP dễ dàng bắt đầu bằng cách gọi hàm session_start (). Hàm đầu tiên sẽ kiểm tra xem session đã được bắt đầu chưa và nếu không có nào được bắt đầu thì nó bắt đầu một. Bạn nên đặt lệnh gọi session_start () ở đầu trang.

    Các biến session đượ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 thời gian tồn tại của một phiên.

    Ví dụ sau bắt đầu một session sau đó đăng ký một biến được gọi là bộ đếm được tăng lên mỗi khi trang được truy cập trong phiên.

    Sử dụng hàm isset () để kiểm tra xem biến sessionđã được đặt hay chưa.

    Đặ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ả.

      session_start();

      if( isset( $_SESSION['counter'] ) ) {

         $_SESSION['counter'] += 1;

      }else {

         $_SESSION['counter'] = 1;

      }

      $msg = "You have visited this page ".  $_SESSION['counter'];

      $msg .= "in this session.";

    ?>

     

      

         

    Setting up a PHP session

      

      

         

      

     

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

    3. Hủy một Session trong PHP

    Một session PHP có thể bị 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 duy nhất có thể phá hủy tất cả các biến phiên. Nếu bạn muốn hủy một biến session duy nhất thì bạn có thể sử dụng hàm unset () để hủy đặt biến phiên.

    • Đây là ví dụ để bỏ đặt một biến duy nhất:

      unset($_SESSION['counter']);

    ?>

    • Đây là cuộc gọi sẽ hủy tất cả các biến session:

      session_destroy();

    ?>

    4. Bật Session tự động

    Bạn không cần phải gọi hàm start_session () để bắt đầu một session khi người dùng truy cập trang web của bạn nếu bạn có thể đặt biến session.auto_start thành 1 trong tệp php.ini.

    5. Session không có Cookie

    Có thể có trường hợp 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 pháp khác để gửi ID session tới trình duyệt.

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

    Ví dụ sau đây minh họa cách đăng ký biến và cách liên kết chính xác đến trang khác bằng SID.

      session_start();

      if (isset($_SESSION['counter'])) {

         $_SESSION['counter'] = 1;

      }else {

         $_SESSION['counter']++;

      }

      $msg = "You have visited this page ".  $_SESSION['counter'];

      $msg .= "in this session.";

      echo ( $msg );

    ?>

    To continue  click following link

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

    Hướng dẫn Session trong PHP trên đã giúp các bạn tìm hiểu Session trong PHP là gì, về cách bắt đầu một Session trong PHP, hủy Session trong PHP, bật Session tự động và session không có Cookie. Chúc các bạn thành công!

    Một số tài liệu về PHP khác bạn nên học:

Đánh giá của học viên đã tốt nghiệp

  • Các anh chị nhiệt tình, thân thiện. Em được mở mang nhiều kiến thức

    Nguyễn Hằng ly
Nguyễn Hằng ly Vũ  Thị Hà Phương Nguyễn Trọng Duy PhạmTiến Đạt Trần Xuân Ái Nguyễn Đình Thành Vũ Văn Thủy Phan Trung Phú Nguyễn Đức Huy Trần An Hưng Trương Quang Trường Trần Thị Hồng Nhung Trương Ngọc Đức Nguyễn Thanh Hằng Cao Minh Lâm Kim Erico Nguyễn Thanh Việt
DevPro Việt Nam