Hướng dẫn what is php session name? - tên phiên php là gì?



Định nghĩa và cách sử dụng

Phiên hoặc xử lý phiên là một cách để cung cấp dữ liệu trên các trang khác nhau của ứng dụng web. Hàm session_name () được sử dụng để đặt tên cho phiên hiện tại hoặc, truy xuất tên của phiên.session_name() function is used to name the current session or, retrieve the name of the session.

Cú pháp

session_name([$name]);

Thông số

Sr.NoMô tả về Thông Số
1

name(Optional)

Đây là một giá trị chuỗi đại diện cho tên của phiên, nếu bạn muốn đặt tên của phiên bằng phương thức này.

Trả về giá trị

Nếu bạn đã vượt qua bất kỳ tham số nào, chức năng này sẽ trả về giá trị chuỗi đại diện cho tên của phiên hiện tại. Nếu bạn đã chuyển một giá trị chuỗi để đặt tên thành phiên hiện tại bằng cách sử dụng chức năng này, hãy trả lại tên của phiên cũ.

Phiên bản PHP

Chức năng này lần đầu tiên được giới thiệu trong Php phiên bản 4 và hoạt động trong tất cả các phiên bản sau.

ví dụ 1

Ví dụ sau đây cho thấy việc sử dụng hàm session_name ().session_name() function.

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>

Một lần thực hiện tệp HTML ở trên, nó sẽ hiển thị thông báo sau -

Session Name: PHPSESSID

Ví dụ 2

Sau đây là một ví dụ khác về chức năng này, ở đây chúng tôi có hai trang từ cùng một ứng dụng trong cùng một phiên -

session_page1.htm

html>
   <body>
      <form action="#" method="post">
         <label for="fname">Enter the values click Submit and click on Next</label>
         <br><br><label for="fname">Name:</label>
         <input type="text" id="name" name="name"><br><br>
         <label for="lname">Age:</label>
         <input type="text" id="age" name="age"><br><br>           
         <input type="submit" name="SubmitButton"/>
         <?php 
            if(isset($_POST['SubmitButton'])){ 
               //Setting the session name	
               session_name("my_session");
               //Starting the session	  
               session_start();  
               $_SESSION['name'] = $_POST['name'];
               $_SESSION['age']  = $_POST['age'];	  
               print("<br><br>Session name: ".session_name());
            }
            echo '<br><br><a href="session_page2.htm">Next</a>';
         ?>
      </form>
   </body>
</html>

Điều này sẽ tạo ra đầu ra sau -

Hướng dẫn what is php session name? - tên phiên php là gì?

Khi bạn nhấn gửi trang sẽ giống như -

Hướng dẫn what is php session name? - tên phiên php là gì?

Khi nhấp vào tiếp theo, tệp sau được thực thi.Next the following file is executed.

session_page2.htm

<html>   
   <head>
      <title>Second Page</title>
   </head>
   <body>
      <?php
         //Changing the session name again
         $s_name = session_name();
     
         //Starting a Session
         session_start();
        
         print($_SESSION['name']); 
         echo "<br><br>";
         print($_SESSION['age']); 	  
         echo "<br><br>";
         print("Previous Session Name: ".$s_name);
      ?>   
   </body>   
</html>

Điều này sẽ tạo ra đầu ra sau -

Krishna
30
Previous Session Name: PHPSESSID

Khi bạn nhấn gửi trang sẽ giống như -

Khi nhấp vào tiếp theo, tệp sau được thực thi.

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $id = session_create_id("test-");
         print("Id: ".$id);
      ?>
   </body>   
</html> 

Ví dụ 3

Id: test-es6j8171lluesjrokpvqqb4b4d

php_function_reference.htm

Khi tôi sử dụng:

session_name( 'fObj' );
session_start();
$_SESSION['foo'] = 'bar';

Sau đó tải trang và chạy:

session_start();
print_r( $_SESSION );

DOE không trả về dữ liệu phiên.

Nếu tôi xóa session_name (); nó hoạt động tốt.

Có ai biết cách sử dụng các phiên với một tên phiên khác không?

UPDATE::

Nếu tôi chạy mã trên, dưới dạng tải hai trang, sau đó thay đổi thành:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
0

Tôi có thể truy cập dữ liệu. Tuy nhiên, nếu nó chỉ hoạt động nếu lần đầu tiên tôi tải trang mà không có dòng:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
1

Hỏi ngày 22 tháng 8 năm 2014 lúc 2:55Aug 22, 2014 at 2:55

Hướng dẫn what is php session name? - tên phiên php là gì?

Kohjah Breesekohjah BreeseKohjah Breese

3,8926 Huy hiệu vàng30 Huy hiệu bạc47 Huy hiệu đồng6 gold badges30 silver badges47 bronze badges

2

John Robertson là chính xác, tuyên bố mà ông đề cập đến trực tiếp từ hướng dẫn sử dụng PHP (http://php.net/manual/en/function.session-dame.php).

Tên phiên của bạn theo mặc định đến từ biến PHP.INI 'phiên.name' và điều này thường được đặt thành 'phpsessid'. Tại mỗi thời gian yêu cầu khởi động (như đã đề cập), phiên sẽ được đổi tên thành phpsessid trừ khi bạn gọi session_name ('fobj') trước session_start () trên mỗi trang, vì vậy trang1:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
2

trang 2:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
3

Sau đó, bạn có thể truy cập cài đặt php.ini của mình và thay đổi biến phiên. Định tên từ PHPSessID sang FOBJ và tất cả các phiên được tạo của bạn sẽ có tên phiên của FOBJ.

Đã trả lời ngày 22 tháng 8 năm 2014 lúc 3:29Aug 22, 2014 at 3:29

Hướng dẫn what is php session name? - tên phiên php là gì?

Trong bài đăng của Nwolybug, tôi nghĩ rằng điều này phải là do một số môi trường môi trường. Tôi có thể làm cho việc này hoạt động thông qua việc làm như sau:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
4

Đã trả lời ngày 22 tháng 8 năm 2014 lúc 3:24Aug 22, 2014 at 3:24

Hướng dẫn what is php session name? - tên phiên php là gì?

Kohjah Breesekohjah BreeseKohjah Breese

3,8926 Huy hiệu vàng30 Huy hiệu bạc47 Huy hiệu đồng6 gold badges30 silver badges47 bronze badges

Tôi có thể giúp nó hoạt động tốt và trả về dữ liệu phiên với mã sau:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
5

Nếu tôi chạy nó với phiên thứ hai_start (); Nó trở lại với một lỗi cho tôi biết một phiên đã được bắt đầu. Nếu bạn đang ở Dev, hãy đảm bảo bật ERROR_ALL trong Php.ini. Hãy chắc chắn để tắt nó trở lại trong sản xuất. Một liên kết đến các chức năng báo cáo lỗi PHP.

Cập nhật: cũng hoạt động với: session_name ('fobj'); $ _Session ['foo'] = 'Bar';

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Starting the session
         session_start();   
         $name = session_name();
         print("Session Name: ".$name);
      ?>
   </body>   
</html>
6

Sử dụng Ubuntu 14.04 LTS, PHP 5.5.9-1 (cho tôi biết nếu bạn cần thêm thông tin hệ thống để giải quyết vấn đề)

Đã trả lời ngày 22 tháng 8 năm 2014 lúc 3:16Aug 22, 2014 at 3:16

Hướng dẫn what is php session name? - tên phiên php là gì?

NWOLYBUGNWOLYBUGnwolybug

4525 Huy hiệu bạc12 Huy hiệu Đồng5 silver badges12 bronze badges

Những gì được gọi là phiên trong PHP?

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.a way to store information (in variables) to be used across multiple pages. Unlike a cookie, the information is not stored on the users computer.

Tên phiên PHP mặc định là gì?

Tên mặc định là phpsessid nếu hàm này được gọi mà không có tham số, nó trả về tên phiên hiện tại.Nếu một chuỗi được truyền dưới dạng tham số, nó được đặt làm tên phiên session_name (trang web của trang web) để đặt tên phiên, chức năng này sẽ được gọi trước hàm session_start ().PHPSESSID if this function is called without parameters it returns the current session name. If a string is passed as a parameter it is set as the session name session_name(“WebsiteSess”) To set a session name this function should be called before the session_start() function.

Làm cách nào để tìm tên phiên của tôi?

Để có được tên phiên, chúng tôi cần gọi hàm session_name () mà không cần truyền bất kỳ đối số nào.Điều này sẽ trả về tên phiên đang được đặt.Nếu không có tên phiên cụ thể được đặt, thì trong trường hợp đó, một chuỗi phpsessid, sẽ được trả lại dưới dạng tên phiên là giá trị mặc định cho tên phiên.call function session_name() without passing any argument. This will return the session name that is being set. IF there is no specific session name set, then in that case a string “PHPSESSID” will be returned as session name which is a default value for session name.

ID phiên PHP là gì?

PHP cho phép chúng tôi theo dõi từng khách truy cập thông qua ID phiên duy nhất có thể được sử dụng để tương quan dữ liệu giữa các kết nối.ID này là một chuỗi ngẫu nhiên được gửi đến người dùng khi một phiên được tạo và được lưu trữ trong trình duyệt của người dùng trong cookie (theo mặc định có tên là PHPSessID).a random string sent to the user when a session is created and is stored within the user's browser in a cookie (by default called PHPSESSID).