Un metodo semplice e molto usato in PHP per memorizzare informazioni sono le SESSIONI.
Le sessioni, a differenza dei Cookie, non scrivono sul computer dell’utente ma sul nostro server, andando a creare dei file dove verranno salvati i dati della sessione di navigazione dell’utente.
Quando la sessione verrà terminata (chiusura del browser da parte dell’utente), i file con i dati verranno eliminati.
Comunemente, le sessioni, vengono usate nella gestione di autenticazione degli utenti.
Se vogliamo utilizzare le sessioni, la prima cosa da fare è impostare php.ini la direttiva session.save_path e indicando la directory nella quale verranno salvate le informazioni sulle sessioni degli utenti.
Nelle pagine PHP, invece, per avviare una sessione bisogna utilizzare la funzione session_start() (N.B. La funzione session_start() deve essere utilizzata assolutamente prima della stampa a video di qualsiasi cosa).
In quest’esempio andiamo a salvare in sessione una variabile ricevuta in GET;
<?php
session_start();
$user = $_GET['user']
$_SESSION['user'] = $user;
?>
Se, invece, volessimo stampare a video le informazioni presenti in sessione:
<?php
session_start();
$user = $_SESSION['user'];
echo "Ciao " . $user;
?>
Per concludere quest’argomento dobbiamo eliminare una sessione:
//Per eliminare una specifica variabile
unset($_SESSION['user']);
//Per eliminare tutte le variabili di sessione:
$_SESSION = array();
3 Marzo 2015 @ 19:50
ciao, innanzitutto grazie mille per l’articolo, ti volevo chiedere una cosa, perché usare le session quando ho il mio comodo metodo $variabile = $_POST[“variabile”]; ?? quale è il vantaggio della session? funziona per più pagine una volta invocata?
grazie mille in anticipo
24 Luglio 2015 @ 15:14
Buongiorno, il contenuto inviato in POST e salvato in una variabile sarà disponibile solo nella pagina successiva all’invio del form.
Salvando del contenuto in una sessione è possibile richiamarlo in qualsiasi pagine in questo modo: $_SESSION[‘nomevariabile’]