Bien que l'utilisateur méfiant à leur égard
conserve la possibilité, par l'intermédiaire des propriétés
de son navigateur, de les désactiver, les cookies se sont
aujourd'hui généralisés: rares sont les sites
qui se privent de ce moyen très utile et relativement simple
à mettre en oeuvre pour venir identifier ses visiteurs et
leur proposer, par ce biais, un contenu toujours plus personnalisé.
Les cookies permettent de stocker des informations sur le disque
dur de l'internaute, sous forme d'un fichier texte de petite taille.
Le contenu de ses fichiers peut être lu par le site, permettant
ainsi:
- de reconnaître le visiteur lors d'une visite ultérieure;
- de stocker des informations temporaires que l'on souhaite transmettre
de page en page (un système de gestion de sessions par exemple).
Créer un cookie en PHP
Nous allons utiliser la fonction setcookie(), de la manière
suivante (par exemple):
setcookie("Journaldunet", "oui",
time()+3600*24*30, "/", ".journaldunet.com",0);
Le premier argument de la fonction spécifie le nom du
cookie. Le second argument spécifie sa valeur
(ici une chaîne). Le troisième spécifie la date
et l'heure à laquelle expirera le cookie: plus précisément,
cette valeur est exprimée en nombre de secondes écoulées
depuis le 1er janvier 1970 (en pratique, on utilise la fonction
time() pour connaître l'heure courante, à laquelle
on ajoute la durée de validation du cookie en secondes).
Notre cookie expirera ici après 30 jours (omettre l'argument,
provoque l'expiration du cookie immédiatement après
la fermeture du navigateur). Le quatrième argument spécifie
le chemin du répertoire de notre site où le
cookie possède une validité; ici, nous spécifions
la racine du site : nous aurions pu omettre cette précision
car il s'agit là de la valeur par défaut de cet argument
facultatif. Le cinquième argument spécifie le nom
du domaine sur lequel est valable le cookie : là encore,
il s'agit d'un argument facultatif dont la valeur par défaut
est le nom du domaine duquel a été envoyé le
cookie. A noter que ce nom de domaine doit obligatoirement comporter
deux ".". Enfin le sixième et dernier argument
est fixé à 1 si l'envoi du cookie est effectué
par protocole sécurisé (https), à 0 sinon (valeur
par défaut de cet argument facultatif).
Récupération de la valeur des
cookies
Les valeurs des cookies valides et disponibles sont automatiquement
stockées dans le tableau $HTTP_COOKIE_VARS. Selon la configuration
de votre serveur, elles sont également stockées dans
la variable correspondant au nom du cookie. Ainsi, on affichera
cette valeur soit par:
echo $Journaldunet;
soit, de manière plus rigoureuse, par:
echo $HTTP_COOKIE_VARS[ "Journaldunet"];
Suppression d'un cookie
Il est très simple, là encore, de supprimer un cookie,
par exemple en cas de déconnexion d'une session par l'utilisateur:
la méthode consiste à renvoyer un cookie avec, pour
seul argument à la fonction setcookie(), le nom du
cookie à supprimer.
|