Page 175 - Corso di PHP - Livello base
P. 175
echo "Login effettuato con successo!";
}
In tutte le pagine che vorremo riservare agli utenti registrati,
dovremo inserire prima di qualsiasi altra cosa la funzione
session_start: se omettessimo la funzione, la pagina non
potrebbe ricevere le informazioni delle sessioni. Se per esempio
con un blocco if controlliamo che l'utente sia loggato (per
esempio verificando, tramite isset, che sia impostato il livello
dell'utente a sua volta memorizzato nella variabile superglobale
$_SESSION) ma allo stesso tempo dimentichiamo di inserire
la funzione session_start, la conseguenza sarà che la pagina non
conoscerà le informazioni memorizzate nella sessione e la
nostra applicazione si comporterà come se l'utente non si fosse
mai loggato al sito. Attenzione anche a non dichiarare due
volte la funzione (spesso, includendo file nella pagina, può
capitare di farlo), perché session_start può essere dichiarata una
volta soltanto.
Le sessioni possono essere poi azzerate o eliminate: per fare
questo è possibile utilizzare le funzioni session_unset e
session_destroy. La differenza consiste nel fatto che la prima
funzione elimina soltanto i dati (senza cancellare gli elementi
dell'array che abbiamo dichiarato in precedenza), la seconda
invece elimina dati e array. Pertanto in seguito a
session_destroy sarà necessario dichiarare nuovamente
session_start. Sono utili in funzioni di logout e si invocano in
modo molto semplice:
session_unset();
session_destroy();
Parliamo adesso dei cookie: molti di voi ne avranno già sentito
175