[Sessioni e Sicurezza] Cancellazione variabili dopo ogni azione svolta. Pareri.

Buonasera a tutti,

sto effettuando varie ricerche sulle sessioni da giorni. Leggo un pò dappertutto che a livello di sicurezza sarebbe meglio PRIMA cancellare le variabili salvate nell'array $_SESSION e poi distruggere la sessione con session_destroy().

Premetto prima di porre i quesiti che pratico php da meno di un anno.

Ora, i quesiti.

1) Data SOLAMENTE una session_start() all'inizio di una pagina con un form..se i dati vengono inviati tramite $_POST..l'array $_SESSION conterrà COMUNQUE i dati passati tramite $_POST oppure no?

2) Data una session_start() ed un form che invia i dati tramite $_POST...il form in questione sarà un form email...a livello di sicurezza, è MEGLIO agire in questo modo? ..e cioè, dopo aver inviato la mail..effettuare una $_SESSION = array() (per cancellare i dati registrati in sessione) ..e POI..effettuare la session_destroy()?

Mi piacerebbe ricevere i vostri pareri a riguardo.

inviato 5 anni fa
wartpro
X 0 X

1) No, i dati presenti in $_SESSION sono solo quelli che esplicitamente inserisci tu. Ciò che proviene da $_POST non viene travasato in $_SESSION.

2) $_SESSION = array() e session_destroy() vanno utilizzati per cancellare tutte i dati di sessione e terminare la sessione, ad esempio quando l'utente effettua il log-out. Se invece in un certo punto del codice vuoi svuotare i dati di sessione (o solo parte di essi) allora ti basta eseguire $_SESSION = array() (cancella tutto) oppure unset($_SESSION['dato_ormai_inutile']) (per cancellare solo ciò che non ti serve più)

 :bye:

risposto 5 anni fa
Gianni Tomasicchio
X 0 X

Grazie mille Gianni per la precisa spiegazione  8)

risposto 5 anni fa
wartpro
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda