PHP - funzione session_id ()

Definizione e utilizzo

Le sessioni o la gestione delle sessioni sono un modo per rendere i dati disponibili su varie pagine di un'applicazione web. Ilsession_id() viene utilizzata per impostare o recuperare un ID personalizzato per quello corrente.

Sintassi

session_id([$id]);

Parametri

Suor n Parametro e descrizione
1

name(Optional)

Questo è un valore stringa che rappresenta l'id della sessione, se si desidera impostare l'id della sessione utilizzando questo metodo.

Valori restituiti

Restituisce una stringa che rappresenta l'id della sessione corrente (se ne ha) o una stringa vuota se la sessione corrente non ha alcun id.

Versione PHP

Questa funzione è stata introdotta per la prima volta nella versione 4 di PHP e funziona in tutte le versioni successive.

Esempio 1

L'esempio seguente mostra l'utilizzo di session_id() funzione.

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

Uno che esegue il file html sopra mostrerà il seguente messaggio:

Session Id: b9t3gprjtl35ms4sm937hj7s30

Esempio 2

Di seguito è riportato un altro esempio di questa funzione, qui abbiamo due pagine della stessa applicazione nella stessa sessione.

session_page1.htm

<?php
   if(isset($_POST['SubmitButton'])){ 
      //Starting the session	
      $id = session_create_id();	
      session_id($id);
      print("\n"."Id: ".$id);
      session_start();  
      $_SESSION['name'] = $_POST['name'];
      $_SESSION['age']  = $_POST['age'];	  
      session_commit();
   }
?>
<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 
            echo '<br><br /><a href="session_page2.htm">Next</a>';
         ?>
      </form>
   </body>
</html>

Questo produrrà il seguente output:

Una volta premuto invia, la pagina sarà come:

Facendo clic su Next viene eseguito il file seguente.

session_page2.htm

<html>   
   <head>
      <title>Second Page</title>
   </head>
   <body>
      <?php
         //Session started
         session_start();
         print("Values from the session with id: ".session_id());
         echo "<br>";
         print($_SESSION['name']); 
         echo "<br>";
         print($_SESSION['age']);
      ?>   
   </body>   
</html>

Questo produrrà il seguente output:

Values from the session with id: brb9t3gprjtl35ms4sm937hj7s30
Krishna
30

Esempio 3

È possibile creare un ID sessione personalizzato utilizzando questa funzione come mostrato di seguito:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Creating a custom session id
         session_id("my-id");
         //Starting the session
         session_start();   
         print("Id: ".session_id());
      ?>
   </body>   
</html>

Uno che esegue il file html sopra mostrerà il seguente messaggio:

Id: my-id