Créer un cookie en PHP est très simple. Il suffit d'utiliser la fonction setcookie. Cette fonction accepte plusieurs paramètres : $name, le nom du cookie.
Un cookie, c'est un petit fichier que l'on enregistre sur l'ordinateur du visiteur. Ce fichier contient du texte et permet de « retenir » des informations sur le visiteur.
Suppression d'un cookie
Pour supprimer un cookie, il faut de nouveau appeller la fonction setcookie() en lui passant en paramètre le nom du cookie uniquement.
PHP supporte les cookies HTTP de manière transparente. Les cookies sont un mécanisme d'enregistrement d'informations sur le client, et de lecture de ces informations. Ce système permet d'identifier et de suivre les visiteurs. Vous pouvez envoyer un cookie avec la fonction setcookie() ou setrawcookie().
Démarrer une session en PHP
Il va falloir appeler session_start() avant toute autre opération dans nos pages, c'est-à-dire au début de celles-ci de la même façon qu'on a déjà pu le faire avec la fonction setcookie() .
Les cookies et les sessions contiennent des informations sur l'utilisateur, mais les cookies sont stockés côté client tandis que les sessions sont stockées côté serveur. Les cookies expirent après un certain temps tandis que les sessions se terminent lorsqu'un utilisateur ferme le navigateur.
Ici, il faut bien noter que la variable $_COOKIE stocke la liste des cookies renvoyés par le navigateur. Lorsqu'un utilisateur demande à accéder à notre page pour la première fois, le cookie user_id est créé côté serveur et est renvoyé au navigateur afin qu'il soit stocké sur la machine du visiteur.
Dans cette configuration, les cookies sont stockés dans le répertoire C:WindowsTemporary Internet Files comme ci-dessous : Voyons à présent comment créer de tels cookies, grâce à la fonction setcookie().
$_SESSION en PHP est une variable qui permet de stocker des informations pour un utilisateur pendant la durée de sa visite sur le site. C'est une variable qui s'avère très utile mais qui est aussi source de problèmes avec notamment la fameuse erreur Cannot send session cookie - headers already sent.
Pour enregistrer une nouvelle variable de session, c'est tout simple. Il suffit juste d'ajouter un couple clé / valeur au tableau $_SESSION comme l'illustre l'exemple suivant.
Pour détruire complètement une session, l'identifiant de la session doit également être effacé. Si un cookie est utilisé pour propager l'identifiant de session (comportement par défaut), alors le cookie de session doit être effacé. La fonction setcookie() peut être utilisée pour cela.
Une variable de session est une variable superglobale du nom de $_SESSION. Il s'agit d'un tableau associatif qui contient les valeurs stockées dans les sessions et qui est accessible quelque soit le contexte. Elle est reconnue sur tout le site Web et sa valeur peut être récupérée de n'importe quelle page.
Parcourez le code HTML de vos pages web jusqu'en bas pour coller le code avant la balise « </body>. Si vous utilisez un CMS comme WordPress, collez le code dans le fichier de pied de page (footer. php) pour appliquer le bandeau d'informations sur les cookies sur l'ensemble de vos pages d'un seul coup !
Le cookie a été inventé en 1938 par les cuisinières américaines Ruth Graves Wakefield et Sue Brides. Elles ont mis au point la recette durant la période où elles possédaient l'auberge Toll House Inn (en) à Whitman, dans le Massachusetts.
La première étape est d'utiliser la fonction session_start() qui indique à votre serveur d'activer la gestion de session. Elle sera ainsi démarrée ou reprise. Vous pouvez ainsi manipuler la variale globale $_SESSION, qui est un tableau.
Lorsque vous utilisez PHP sur Windows, la configuration peut être modifiée dossier par dossier en utilisant la base de registres de Windows. Les valeurs de configuration sont stockées avec la clé de registre HKLM\SOFTWARE\PHP\Per Directory Values , dans les sous-clés correspondantes aux noms de dossier.
Chaque utilisateur ayant besoin des sessions se voit attribuer un identifiant unique appelé ID de session. Cet identifiant est stocké sur le poste de l'internaute sous forme d'un cookie ou transite via l'URL si l'option session. use_trans_sid est à 1 (ou On) dans le fichier php.
On écrira toujours les superglobales en majuscules. Cela est une convention qui permet de les différencier des variables « classiques » que nous créons nous-mêmes. Par ailleurs, vous pouvez remarquer que toutes les superglobales à l'exception de $GLOBALS commencent par un underscore _ .
Les sessions sont un moyen simple de stocker des données individuelles pour chaque utilisateur en utilisant un identifiant de session unique. Elles peuvent être utilisées pour faire persister des informations entre plusieurs pages.
Les cookies sont gérés par votre navigateur internet et l'utilisateur peut les lire en faisant un click droit sur la page web et “Inspecter le code”. Seul l'émetteur d'un cookie est susceptible de modifier les informations qui y sont contenues.