Articoli / Php
addthis
Basi sulle Sessioni
Author: Tafaz
Visits: 12488
Date: 22.03.2006

Le sessioni sono un meccanismo che ci permette di associare un insieme di dati ad un utente e di mantenerli attraverso la navigazione del nostro sito.

Per spiegare meglio questo concetto pensiamo a tutti quei siti che ci richiedono un login per accedere ad un'area riservata. Al primo accesso ci viene chiesto di inserire le nostre credenziali e una volta verificata la loro correttezza noi possiamo tranquillamente accedere a qualsiasi pagina.
Per far si che ad ogni cambio pagina non ci venga chiesto nuovamente di insrire le credenziali per autenticarci il sistema salverà una o più variabili nella nostra sessione le quali gli comunicheranno ai successivi accessi che noi abbiamo già effettuato il login.

Per fare questo PHP ogni volta che si richiede l'inizio di una nuova sessione assegna ad ogni utente un identificativo univoco chiamato id di sessione e questo viene salvato o in un cookie sul pc dell'utente o trasmesso di pagina in pagina tramite URL.
Se la sessione è basata sui cookie (metodo più sicuro per evitare il session hijacking!) la chiamata session_start(); dovrà essere fatta all'inizio di ogni pagina prima di ogni output al browser, il che significa che alla riga 1 del nostro editor dovremmo avere il tag di apertura di php session_start(); oppure PHP lo farà automaticamente se in php.ini la direttiva session.auto_start è impostata a 1.

Quando l'utente passerà da una pagina all'altra e verrà richiamata nuovamente session_start(); PHP troverà che l'utente ha già un id di sessione assegnato e ricreerà l'ambiente di sessione precedentemente creato, quindi session_start(); ha la duplice funzione di inizializzare nuove sessioni se l'utente non ha un id assegnato e in caso contrario di recuperare i dati delle sessioni precedenti.




Page 1 of 3 >>


Se vuoi discutere con noi su questo articolo o comunque vuoi porci delle domande usa il nostro Forum

COMMENTI

Aggiungi un commento! +
(I commenti verranno moderati prima della pubblicazione)



Top