PHP Sessions e Cookies

Avete sicuramente visto siti web che utilizzano i cookie per tracciare chi sei, forse il benvenuto dopo l'accesso o la presentazione di informazioni personalizzate relative al vostro account dopo l'accesso. È possibile utilizzare le sessioni PHP e biscotti per fare questo, compreso l'invio dei dati lungo in un modulo con ogni richiesta.

Ma non è sicuro e non è quasi abbastanza flessibile per le applicazioni web di oggi. Per fortuna, c'è un modo migliore - ed è a portata di mano: le sessioni.

Sessioni PHP

Una sessione in PHP è un modo sicuro per tenere traccia di un utente da una pagina all'altra. Con una sessione, è possibile memorizzare le informazioni sugli utenti, come ad esempio il loro indirizzo e-mail, nome, numero di telefono, e qualsiasi altri dettagli che hai, e inserire automaticamente le informazioni ovunque sia necessario nel sito.

Ad esempio, dire che il login si carica nome e indirizzo e-mail dell'utente dal database utente. È possibile memorizzare le informazioni in una sessione, essenzialmente nascosto da parte dell'utente, fino a quando lo si utilizza.

Si utilizza variabili di sessione come si farebbe con qualsiasi altra variabile. Dietro le quinte, le sessioni vengono memorizzati in un array chiamato $ _SESSION. Si memorizzano valori proprio come si farebbe con un array in PHP. Ad esempio, è possibile tenere traccia di un indirizzo e-mail e nome come questo:

$ _SESSION ['EmailAddress'] = "[email protected]";
$ _SESSION ['FirstName'] = "Steve";

È inoltre possibile utilizzare le sessioni per tenere traccia delle informazioni compilato su un modulo web, senza dover portare tali informazioni attraverso il sito in variabili di form nascosti.

Cookie PHP

Le sessioni sono passati i cookie del browser, che sono piccoli pezzi extra di informazioni che vengono inviati e ricevuti da un browser web. I bit effettivi di informazioni, o che i bit sono in realtà, dipende da voi, il programmatore.

Ad esempio, è possibile inviare un cookie che contiene il nome dell'utente. Il cookie potrebbe quindi essere memorizzati sul computer dell'utente e la prossima volta che visita il sito, il cookie sarà inviato al proprio programma, che sarebbe poi presentare un saluto personalizzato.

Tuttavia, i cookie sono come tutti gli altri dati che si ottiene da un utente - i dati cookie deve essere sterilizzate, perché non ci si può fidare. In altre parole, una volta che il programma invia un cookie al browser di un visitatore, il visitatore può integrare o modificare il cookie di essere tutto ciò che vuole.

Quindi, se si (sviluppatore web) utilizza il cookie per memorizzare un nome utente, il visitatore può cambiare il nome utente di quello che vuole e poi rispedirlo al vostro programma.

La possibilità di utenti editing loro biscotti è in gran parte risolto, semplicemente utilizzando le sessioni. Quando viene creato un cookie di sessione, utilizza un valore hash, che è una lunga stringa di caratteri. Ciò significa che, anche se gli utenti modificano il valore del cookie, in altre parole, se cambiano che hash, non sono realmente cambiando tutto ciò che si sta utilizzando nel programma direttamente.

Invece, PHP gestisce la traduzione di tale hash dal cookie sul vostro conto, e allora si può andare avanti con l'attività di usare le cose in $ _SESSION. I valori reali che vengono archiviati in $ _SESSION vengono mai viste dall'utente; esistono solo sul server.

Naturalmente, con le sessioni con i cookie significa che i cookies devono essere abilitati nel browser dell'utente. Se non lo sono, quindi l'utente non può utilizzare l'applicazione.