I Cookie sono il metodo più comune per la memorizzazione dello stato nel web. Il cookie è un piccola file che contiene alcune informazioni e viene memorizzato nella memoria del browser o sul disco. Per inviare cookie devono essere attivati dal browser del client. Quando si invia un cookie lo possiamo leggere solo quanto l’utente torna sul sito. I cookie devono essere emessi prima di qualsiasi codice php o html. Questi non devono superare le dimensioni di 4 Kb. I cookie possono contenere fino a sei componenti: Nome, Valore, Scadenza, Percorso, Dominio, Sicurezza.

Ecco la sintassi per emettere un cookie:

setcookie(nome, valore, tempo, percorso, dominio, sicurezza).

<?php
setcookie ("test_cookie","niente di particolare",time()+43200,"/");
# cookie.php
echo "<HTML>";
echo "<BODY>";
if (isset($test_cookie)){
echo "Ciao cookie, i tuoi contenuti sono: $test_cookie";
} else {
echo "Non ho trovato alcun cookie con il nome test_cookie";
}
echo "</BODY>";
echo "</HTML>";
?>

Esempio

Per eliminare un cookie possiamo fare in due modi

setcookie (“nome del cookie”);

oppure metter un tempo di scadenza negativo

setcookie ( “nome”,””,”time()-43200,”/”);

Se nel tempo di scadenza mettiamo

time() +3600 –> Scadrà tra un ora

time() +86400 –> Scadrà tra 24 ore

time() +2592000 –> Scadrà tra 30 giorni

Possiamo vedere tutti i cookie che corrispondono al nostro sito tramite una variabie

echo $HTTP_COOKIE_VARS["nome"];

I cookie si possono usare anche per personalizzare la pagina di benvenuto

Ecco la pagina del nostro sito web chiamatela cookie1.php

<?php
#se c'e allora ciao
if (isset($nome)){
echo "Ciao $nome";
}else{
#altrimenti
echo "Non ti conosco :<a href=\"inserisci.php\">Inserisci il tuo nome</a>";
}
?>

Ecco la pagina dove si inserisce il nome

<html>
<body bgcolor="blue">
<br><br><br><br>
<center>
<form method=get action="cookie2.php">
<input type="text" name="nome1">
<input type="submit" value="invia">
</form>
</body>
</html>

Una semplice pagina chiamata inserisci.php(potevamo chiamarla anche .htm)

Ecco la pagina che imposta il cookie chiamata cookie2.php

<?php
setcookie ("nome",$nome1,time()+2592000,"/");
echo "cookie impostato <a href=\"cookie1.php\"> VERIFICA</a>";
?>

Esempio