PHP - Cookies

L'Anatomia di un Cookie

I cookie sono piccoli pezzi di dati che vengono memorizzati sul computer dell'utente dal browser web durante la navigazione. Vengono utilizzati per ricordare informazioni sull'utente, come le sue preferenze o lo stato di login, tra le sessioni. In PHP, i cookie possono essere impostati e accessibili utilizzando funzioni incorporate.

PHP - Cookies

Cos'è un Cookie?

Un cookie è un file di testo che un sito web placing sul disco rigido del tuo computer. Ogni volta che visiti il sito web, il browser invia il cookie tilbake al server per informare il sito web delle tue attività precedenti. Questo permette ai siti web di personalizzare la tua esperienza in base alle tue interazioni passate con loro.

Tipi di Cookie

Ci sono due tipi di cookie: cookie di sessione e cookie persistenti.

  1. Cookie di Sessione: Questi cookie sono temporanei e vengono eliminati quando l'utente chiude il browser. Sono utili per memorizzare informazioni temporanee come un elenco di articoli nel carrello della spesa.
  2. Cookie Persistenti: Questi cookie rimangono sul computer dell'utente fino a quando non scade la loro data di scadenza o vengono manualmente eliminati dall'utente. Vengono utilizzati per il tracciamento a lungo termine, come mantenere le preferenze dell'utente o le sessioni di login.

Come Impostare un Cookie in PHP?

Per impostare un cookie in PHP, si utilizza la funzione setcookie(). Ecco come fare:

<?php
// Imposta un cookie chiamato "username" con un valore di "JohnDoe" che scade dopo 30 giorni
setcookie("username", "JohnDoe", time() + (86400 * 30), "/");
?>

In questo esempio, stiamo impostando un cookie chiamato "username" con il valore "JohnDoe". Il terzo argomento è il tempo di scadenza, che viene calcolato sommando il numero di secondi in 30 giorni al tempo corrente (time()). Il quarto argomento è il percorso in cui il cookie è disponibile. Impostandolo su "/", significa che il cookie è disponibile su tutto il sito web.

Accedere ai Cookie con PHP

Una volta che un cookie è stato impostato, puoi accedere al suo valore utilizzando l'array superglobale $_COOKIE in PHP. Ecco un esempio di come recuperare il valore del cookie "username":

<?php
if(isset($_COOKIE["username"])) {
echo "Bentornato, " . $_COOKIE["username"] . "!";
} else {
echo "Benvenuto, ospite!";
}
?>

In questo codice, controlliamo se il cookie "username" è impostato utilizzando isset(). Se esiste, mostriamo un messaggio di benvenuto con il nome utente. Altrimenti, mostriamo un messaggio di benvenuto generico per gli ospiti.

Eliminare i Cookie

Per eliminare un cookie, è necessario impostare il suo tempo di scadenza a una data passata. Ecco come eliminare il cookie "username":

<?php
// Elimina il cookie "username"
setcookie("username", "", time() - 3600);
?>

Imponendo il tempo di scadenza a una data nel passato, il browser rimuoverà automaticamente il cookie. In questo esempio, stiamo impostando il tempo di scadenza a un'ora fa, eliminando così il cookie "username".

Ecco tutto! Ora sai come impostare, accedere ed eliminare i cookie in PHP. Ricorda, i cookie dovrebbero essere utilizzati con responsabilità, poiché possono memorizzare informazioni sensibili. Assicurati sempre che il tuo sito web segua le migliori pratiche per la gestione dei cookie e la privacy degli utenti.

Buon coding!

Credits: Image by storyset