k3nshin
06-01-2005, 15:05
Faccio una premessa un po' lunga per cercare di spiegare la situazione nel modo migliore possibile
Sto realizzando un sito che permetta agli utenti di effettuare un login, quindi uso le variabili $_SESSION[ ] per mantenere alcuni dati dell'utente prelevati dal db, tra i quali username e tipo di utente (amministratore, utente, ecc...) ... Al momento del login, viene inizializzata la sessione (session_start()) e settati i valori per le variabili di sessione... La pagina a cui si accede dopo il login ha come prima istruzione session_start(), posta prima di qualsiasi output HTML ... Viene visualizzato un messaggio di benvenuto contenente, tra l'altro, il tipo di utente, prelevato dalla variabile di sessione apposita. Il problema è il seguente: effettuando una prima volta il login, navigando e quindi uscendo, non ci sono errori; rientrando nel sito con un altro utente e navigando, capita che il tipo di utente cambi valore e ritorni al valore dell'utente precedente... nel mio codice NON c'è neanche un'istruzione che vada a modificare la variabile in questione, dopo il login... il logout è effettuato nel seguente modo:
...
session_start();
session_unset();
$_SESSION=array();
...
per completezza, aggiungo che il login salva (volendo) un cookie, NON contenente però il tipo di utente...
:mc:
Sto realizzando un sito che permetta agli utenti di effettuare un login, quindi uso le variabili $_SESSION[ ] per mantenere alcuni dati dell'utente prelevati dal db, tra i quali username e tipo di utente (amministratore, utente, ecc...) ... Al momento del login, viene inizializzata la sessione (session_start()) e settati i valori per le variabili di sessione... La pagina a cui si accede dopo il login ha come prima istruzione session_start(), posta prima di qualsiasi output HTML ... Viene visualizzato un messaggio di benvenuto contenente, tra l'altro, il tipo di utente, prelevato dalla variabile di sessione apposita. Il problema è il seguente: effettuando una prima volta il login, navigando e quindi uscendo, non ci sono errori; rientrando nel sito con un altro utente e navigando, capita che il tipo di utente cambi valore e ritorni al valore dell'utente precedente... nel mio codice NON c'è neanche un'istruzione che vada a modificare la variabile in questione, dopo il login... il logout è effettuato nel seguente modo:
...
session_start();
session_unset();
$_SESSION=array();
...
per completezza, aggiungo che il login salva (volendo) un cookie, NON contenente però il tipo di utente...
:mc: