MANIPULER LES COOKIES EN PHP
Transcription
MANIPULER LES COOKIES EN PHP
TSOM GESTION DES COOKIES MANIPULER LES COOKIES EN PHP PHP Cookies - Qu'est-ce qu'un cookie ? Un cookie est un fichier que le serveur envoi sur la machine de l'utilisateur. Il est souvent utilisé pour reconnaître les utilisateurs. Vous pouvez en php créer et retrouver les valeurs du cookie. PHP Cookies - Comment créer un cookie. La fonction setcookie() est utilisé pour créer un cookie. : La fonction setcookie() doit être placé avant tout code HTML, car le cache du navigateur doit être vide pour que cette fonction marche convenablement. IMPORTANT Syntaxe : <?php setcookie(name, value, expire, path, domain); ?> Exemple : L'exemple ci-dessous génère un cookie appelé "nom_cookie ", avec pour contenu "Léon" et pendant une période de 10 heures. <?php // génère le cookie $contenu = 'léon'; // le contenu de votre cookie setcookie("nom_cookie", $contenu, time()+36000); ?> <html> <body> <p> Un cookie a été généré sur cette page. </p> </body> </html> PHP Cookies - Comment retrouver la valeur d'un cookie. Quand un cookie est généré, php utilise le nom du cookie comme une variable Pour y accéder, référez vous au nom de la variable Utiliser la fonction isset() pour voir si un cookie a été généré 1 TSOM GESTION DES COOKIES Exemple : L'exemple ci-dessous teste l'existence d'un cookie appelé "nom_cookie " et affiche si le cookie existe ou n'existe pas. <html> <body> <?php // test l'existance d'un cookie apelé "nom_cookie" if (isset($_COOKIE["nom_cookie"])) echo 'Le cookie existe ' . $_COOKIE["nom_cookie"] . '!<br />'; else echo 'Le cookie n\'existe pas <br />'; ?> </body> PHP Cookies - Comment afficher un cookie. Un cookie peut contenir des variables, une chaîne de caractère ou un tableau. Vous pouvez afficher directement le contenu de votre cookie à l'aide des variables d'environnements. Syntaxe : <?php echo $_COOKIE["nom"]; // ou echo $HTTP_COOKIE_VARS["nom"]; ?> PHP Cookies - Comment afficher tous les cookies. Une méthode pour afficher tous les cookies en une seule fois !! Syntaxe : <?php print_r($_COOKIE); ?> 2 TSOM GESTION DES COOKIES Détruire un cookie Pour cela, il vous suffit de faire appel à la fonction setcookie() avec pour seul argument le nom du cookie à détruire. Vous pouvez également spécifier une chaine quelconque pour la valeur du cookie et une valeur minimale pour la date d'expiration du cookie. EXEMPLE : <?php /* * Les deux exemples suivants sont équivalents */ setcookie('cookie_name'); // exemple 1 setcookie('cookie_name', '', 1); // exemple 2 ?> Informations complémentaires Si vous voulez que le cookie ne soit accessible que pour certains répertoires de votre site, vous pouvez le spécifier avec le quatrième argument de la fonction setcookie(). Supposons que vous ayez un répertoire rep1 sur votre site : http://www.domaine.com/rep1/ <?php setcookie ('cookie_name', 'blablabla', (time() + 3600), '/rep1/'); ?> Le cookie ne pourra être lu que par un script se trouvant dans le répertoire rep1 ou dans un de ses sous-repertoires. Vous pouvez également utiliser les cookies comme des tableaux : <?php setcookie ('cookie_name[miam]', 'c\'est bon', (time() + 3600)); setcookie ('cookie_name[slurp]', 'c\'est délicieux', (time() + 3600)); setcookie ('cookie_name[berk]', 'c\'est mauvais, (time()+3600)); ?> Et pour réceptionner les cookies : <?php echo $_COOKIE['cookie_name']['miam']; // affichera "c'est bon" echo $_COOKIE['cookie_name']['slurp']; // affichera "c'est délicieux" echo $_COOKIE['cookie_name']['berk']; // affichera "c'est mauvais" ?> 3