PHP - Cookies

L'Anatomie d'un Cookie

Les cookies sont de petites pieces de donnees stockees sur l'ordinateur de l'utilisateur par le navigateur web pendant la navigation. Ils sont utilises pour se souvenir des informations sur l'utilisateur, comme ses preferences ou son statut de connexion, entre les sessions. En PHP, les cookies peuvent etre definis et acces par des fonctions integrees.

PHP - Cookies

Qu'est-ce qu'un Cookie ?

Un cookie est un fichier texte que le site web place sur le disque dur de votre ordinateur. Chaque fois que vous visitez le site web, le navigateur envoie le cookie retour au serveur pour informer le site web de votre activite anterieure. Cela permet aux sites web de personnaliser votre experience en fonction de vos interactions precedentes avec eux.

Types de Cookies

Il y a deux types de cookies : les cookies de session et les cookies persistants.

  1. Cookies de Session : Ces cookies sont temporaires et sont supprimes lorsque l'utilisateur ferme le navigateur. Ils sont utiles pour stocker des informations temporaires comme une liste d'articles du panier d'achat.
  2. Cookies Persistants : Ces cookies restent sur l'ordinateur de l'utilisateur jusqu'a ce qu'ils atteignent leur date d'expiration ou soient supprimes manuellement par l'utilisateur. Ils sont utilises pour un suivi a long terme, comme le maintien des preferences de l'utilisateur ou des sessions de connexion.

Comment Definir un Cookie en PHP ?

Pour definir un cookie en PHP, vous utilisez la fonction setcookie(). Voici comment vous pouvez le faire :

<?php
// Definir un cookie nomme "username" avec une valeur de "JohnDoe" qui expire apres 30 jours
setcookie("username", "JohnDoe", time() + (86400 * 30), "/");
?>

Dans cet exemple, nous definissons un cookie nomme "username" avec la valeur "JohnDoe". Le troisieme argument est le temps d'expiration, qui est calcule en ajoutant le nombre de secondes dans 30 jours a l'heure actuelle (time()). Le quatrieme argument est le chemin ou le cookie est disponible. En le mettant a "/", cela signifie que le cookie est disponible sur l'ensemble du site web.

Acceder aux Cookies avec PHP

Une fois qu'un cookie a ete defini, vous pouvez acceder a sa valeur en utilisant le tableau superglobal $_COOKIE en PHP. Voici un exemple de comment recuperer la valeur du cookie "username" :

<?php
if(isset($_COOKIE["username"])) {
echo "Bienvenue back, " . $_COOKIE["username"] . "!";
} else {
echo "Bienvenue, invite!";
}
?>

Dans ce code, nous verifions si le cookie "username" est defini en utilisant isset(). Si il existe, nous affichons un message de bienvenue avec le nom d'utilisateur. Sinon, nous affichons un message de bienvenue generique pour les invites.

Supprimer les Cookies

Pour supprimer un cookie, vous devez definir son temps d'expiration a une date passee. Voici comment vous pouvez supprimer le cookie "username" :

<?php
// Supprimer le cookie "username"
setcookie("username", "", time() - 3600);
?>

En definissant le temps d'expiration a une heure dans le passe, le navigateur supprimera automatiquement le cookie. Dans cet exemple, nous mettons le temps d'expiration a une heure avant, efficace pour supprimer le cookie "username".

C'est tout ! Vous savez maintenant comment definir, acceder et supprimer des cookies en PHP. Souvenez-vous, les cookies doivent etre utilises de maniere responsable, car ils peuvent stocker des informations sensibles. Assurez-vous toujours que votre site web suit les meilleures pratiques pour la gestion des cookies et la vie privee des utilisateurs.

Bonne programmation !

Credits: Image by storyset