Les cookies

Qu'est-ce qu'un cookie?

Un cookie est un petit fichier de texte enregistré sur l'ordinateur du visiteur et utilisé par la page PHP.

A quoi sert-il?

Un cookie peut stocker diverses informations que vous pourrez récupérer plus tard. Mais quel en est l'intérêt? C'est très simple: si, par exemple, vous décidez que le visiteur peut choisir le design de votre site, ses préférences seront retenues dans un cookie et ainsi, lors de sa prochaine visite, ses préférences s'afficheront automatiquement.

Pour créer un cookie, vous emploierez la fonction setcookie();. Voici la liste des propriétés de cette fonction:
  • name:le nom du cookie
  • value: le contenu du cookie
  • expire: la date d'expiration du cookie (notée en secondes)
  • path: indique l'endroit du site où le cookie est actif
  • domain: indique le nom de domaine émetteur (par exemple: http://theprogrammeur.ifrance.com)
  • secure: indique si le cookie doit être envoyé seulement par une connection sécurisée (https)

    : les informations sur les cookies doivent être notées dans l'ordre.


    Voici un exemple de cookie contenant l'adresse de ce site et qui restera une heure sur l'ordinateur du client:

    <?php
    setcookie('theprogrammeur','http://theprogrammeur.
    free-h.org'
    ,(time()+3600));
    ?>


  • theprogrammeur est le nom du cookie
  • il contient l'addresse de ce site
  • il restera 3600 secondes (une heure) sur l'ordinateur du visiteur

    : les cookies doivent être envoyés avant tout début d'affichage puisqu'ils peuvent influencer ce dernier ce qui veut dire que la fonction setcookie(); doit être placée avant tout, même avant <html>.

    Il y a aussi moyen de lire un cookie. Devinez comment nous allons procéder.
    ......
    Evidemment, nous allons utiliser la fonction echo;. Voici comment afficher le contenu d'un cookie:

    <?php
    echo $_COOKIE['nom_du_cookie'];
    ?>


    Et si je veux détruire un cookie avant qu'il ne se détruise de lui-même?
    Pas de problème, il suffit d'envoyer un autre cookie portant le même nom et qui ne possède pas de durée de vie ou dont la durée de vie est négative.

    Pour bien ancrer cette matière dans votre mémoire, voici un exemple employant un cookie. Ce script affiche un compteur personnel pour chaque utilisateur.

    <?php
    if(isset($_COOKIE['compteur'])){//si le cookie existe
    $compteur = $_COOKIE['compteur'];//on récupère le contenu du cookie
    //dans une variable pour avoir plus facile.
    $compteur++;//on l incrémente de 1
    setcookie('compteur',$compteur,time()+365*24*3600);
    //on l ecrase avec un nouveau cookie portant le même nom
    echo'Vous avez visité cette page'.$compteur.'fois';
    //et on affiche le nombre de visites.
    }
    else{//si le cookie n'existe pas
    $compteur = 1;//on crée la variable compteur avec un valeur de départ de 1
    setcookie('compteur', $compteur, time()+365*24*3600);
    //on crée le cookie compteur qui sera valable pendant 1 an
    }
    ?>

    : Ce code doit être placé au tout début de la page, avant la balise <html>. Par contre, vous pouvez mettre le echo'Vous avez visité cette page'.$compteur.'fois'; ou vous souhaitez voir apparaitre le résultat dans votre page.

       

  • Creative Commons License
    Sauf mention contraire, le contenu de cette page est sous licence Creative Commons
    Page générée en 0.3011 secondes.
    Retour en haut de la page
    Imprimer cette page