La differenza tra cookie e sessioni di PHP

In PHP, le informazioni sui visitatori designate per essere utilizzate sul sito possono essere archiviate in sessioni o cookie. Entrambi realizzano più o meno la stessa cosa. La differenza principale tra i cookie e le sessioni è che le informazioni memorizzate in un cookie sono memorizzate nel browser del visitatore e le informazioni memorizzate in una sessione non lo sono, ma sono archiviate sul server web. Questa differenza determina ciò per cui ognuno è più adatto.

Un cookie risiede sul computer dell'utente

Il tuo sito Web può essere impostato per posizionare un cookie sul computer di un utente. Quel cookie mantiene le informazioni nel computer dell'utente fino a quando le informazioni non vengono eliminate dall'utente. Una persona può avere un nome utente e una password per il tuo sito Web. Tali informazioni possono essere salvate come cookie sul computer del visitatore, quindi non è necessario che acceda al tuo sito Web ad ogni visita. Gli usi comuni dei cookie includono l'autenticazione, la memorizzazione delle preferenze del sito e gli articoli del carrello. Sebbene sia possibile memorizzare quasi tutto il testo in un cookie del browser, un utente può bloccare i cookie o eliminarli in qualsiasi momento. Se, ad esempio, il carrello della spesa del tuo sito Web utilizza cookie, gli acquirenti che bloccano i cookie nei loro browser non possono acquistare sul tuo sito Web.

I cookie possono essere disabilitati o modificati dal visitatore. Non utilizzare i cookie per archiviare dati sensibili.

Le informazioni sulla sessione si trovano sul server Web

Una sessione è un'informazione sul lato server destinata a esistere solo durante l'interazione del visitatore con il sito Web. Solo un identificatore univoco viene archiviato sul lato client. Questo token viene passato al server Web quando il browser del visitatore richiede il tuo indirizzo HTTP. Tale token corrisponde al tuo sito Web con le informazioni del visitatore mentre l'utente si trova sul tuo sito. Quando l'utente chiude il sito Web, la sessione termina e il sito Web perde l'accesso alle informazioni. Se non hai bisogno di dati permanenti, le sessioni sono di solito la strada da percorrere. Sono un po 'più facili da usare e possono essere grandi quanto basta, rispetto ai cookie, che sono relativamente piccoli.

Le sessioni non possono essere disabilitate o modificate dal visitatore.  

Pertanto, se si dispone di un sito che richiede un accesso, tali informazioni sono meglio fornite come cookie o l'utente sarebbe costretto ad accedere ogni volta che visita. Se si preferisce una maggiore sicurezza e la capacità di controllare i dati e quando scade, le sessioni funzionano meglio.

Ovviamente puoi ottenere il meglio da entrambi i mondi. Quando sai cosa fanno ciascuno, puoi utilizzare una combinazione di cookie e sessioni per far funzionare il tuo sito esattamente come vuoi che funzioni.