Les Cookies

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 2

Chap 3 PHP – Les cookies

Qu'est-ce qu'un cookie ?

Les cookies sont de petits fichiers textes placés sur votre disque dur par les sites
internet qui les utilisent. A chaque consultation d'une page, votre navigateur envoie
dans les en-têtes HTTP, le nom et les données des cookies que le site a créés, et qui
sont encore valides.

Pour créer un cookie sur le navigateur de l'internaute (le client), le site internet place
une mention dans les requêtes qu'il envoie au navigateur. Celui-ci les interprète et
décide de créer un cookie disposant d'un nom, d'une valeur et d'une date de fin de
validité. Chaque site internet peut créer plusieurs cookies, mais ils ont tous, chacun,
une taille maximale de 4 Ko. N'espérez donc pas stocker de grosses informations par
ce moyen.

Les cookies ne sont consultables que par le site qui les a créés. Il sera donc
impossible pour un site internet de lire l'ensemble de vos cookies.

Ce mécanisme de communication permet de conserver des données de pages en


pages, bien qu'on préfère en PHP les sessions, bien plus sécurisées et situées côté
serveur.

Créer un cookie en PHP


On utilise la fonction PHP setcookie() pour créer un cookie.

Exemple de création d'un cookie

<?php
setcookie('moncookie','Anthony',time()+$validite);
?>

Création d'un cookie valable 7 jours

La variable $validite est un nombre entier spécifiant le nombre de secondes (par


rapport au temps actuel) pendant lesquelles le cookie sera valide. Si vous souhaitez
créer un cookie valable 7 jours, il faudra compter 7 * 24 * 3600 secondes.

<?php
setcookie('moncookie','Anthony',time()+ 3600 * 24 * 7);
?>

D'autres paramètres existent pour la fonction setcookie() mais je n'en parlerai pas
ici. Ils permettent entre-autres de restreindre la visibilité des cookies à un ou
plusieurs sous-domaines de votre site, ou encore de ne pas rendre visible le cookie
via Javascript.
Des explications plus détaillées sont disponibles sur fr.php.net

Attention ! l'usage de la fonction setcookie() se fait avant toute écriture de code


HTML ou textuel. Si vous ne respectez pas cette consigne, une erreur Headers
already sent by apparaîtra. Vous pouvez utiliser la bufferisation de sortie en
PHP pour résoudre ce problème si vous n'avez pas totalement la main sur votre
code.

Supprimer un cookie

Pour supprimer un cookie, c'est très simple. A l'aide de la fonction setcookie(), vous
passez en paramètre le nom du cookie que vous souhaitez supprimer, et c'est tout !

<?php
setcookie('moncookie','');
?>

Lire la valeur d'un cookie

Si vous vous souvenez, nous avons vu plus haut que l'utilisation des cookies était en
partie similaire à celle des sessions. C'est bien le cas !
Pour lire un cookie nommé moncookie, vous devrez utiliser le code suivant :

<?php
echo $_COOKIE['moncookie'];
?>

Vous aimerez peut-être aussi