Les cookies en php Posté par nickolas le 20/08/2004 07:47:48
Les cookies sont des petits fichiers textes pouvant stocker un certain nombre d'informations sur l'ordinateur de vos visiteurs. Voyons comment les utiliser !
La fonction setcookie() permet de faire tout ce que vous voulez avec les cookies : les créer, les supprimer ...
La fonction setcookie() utilise des arguments :
- nom : c'est le nom que vous attribué à votre cookie, il peut être différent du nom de votre site.
- valeur : c'est ce que contient votre cookie, cela peut être un pseudo, une date ...
- expiration : c'est la durée de vie de votre cookie, elle peut être d'un jour, d'un mois comme d'un ans !
- chemin : il permet de définir dans quelles parties de votre site vous voulez utiliser le cookie, par exemple : "/admin/" (admin étant le nom d'un répertoire sur votre serveur).
- domaine : c'est le domaine de votre site, par exemple : "toophp.free.fr"
- sécurité : si il a la valeur 1 il ne sera transmis que si la ligne est sécurisé par SSL ou SHTTP, sinon il prend la valeur 0.
Pour créer un cookie valable 24h et savoir si un visiteur a déjà visiter votre site
setcookie("toophpvisite","oui",time()+3600*24,"/","toophp.free.fr",0);
Pour créer un cookie qui s'effacera le 1 janvier 2002
setcookie("nom","valeur",mktime(0,0,0,1,1,2002),"/","toophp.free.fr",0);
ATTENTION : Vous devez créer les cookies avant tout envoie de données html c'est à dire que la fonction setcookie() doit être placé avant <html>.
Pour récupérer la valeur d'un cookie c'est très simple. Dès qu'un visiteur ayant sur son ordinateur un cookie avec l'url ou le chemin de votre site surf sur votre site, le cookie est automatiquement ouvert et vous pouvez récupérer ce qu'il contient dans vos scripts.
Par exemple si votre cookie s'appelle "pseudo" et que sa valeur est "Superman", la variable "$pseudo" aura la valeur "Superman" et si vous faites echo "Bonjour $pseudo";ou echo "Bonjour $_COOKIE['pseudo']"; vous optiendrez Bonjour Superman.
Pour supprimer un cookie, il suffit d'utiliser la fonction setcookie() avec seulement l'argument nom.
Par exemple : setcookie("toophpvisite"
Re: Les cookies en php Posté par jérémy le 20/08/2004 07:47:48
Il faut noter que l'utilisation $_COOKIE["nom_du_cookie"] n'est possible qu'avec les dernières versions de PHP...
Pour les anciennes versions, il faut utiliser $HTTP_COOKIE_VARS["nom_du_cookie"]
Et qu'il est plus sécurisé d'utiliser $_COOKIE["nom_du_cookie"] ou $HTTP_COOKIE_VARS["nom_du_cookie"] plutôt que $nom_du_cookie ...