English English

Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/ard-site/templates/ardsite/library/Designer/Content/SingleArticle.php on line 198

Cookies dans JS

Les cookies sont utilisés par exemple pour maintenir les informations de session entre les différentes pages. Par exemple, l'enregistrement d'un utilisateur se termine après avoir complété plusieurs pages. Mais comment maintenir les informations de session des utilisateurs à travers toutes les pages Web. Dans de nombreuses situations, l'utilisation de cookies est la méthode la plus efficace pour mémoriser et suivre les préférences, les achats, les commissions et autres informations nécessaires pour améliorer l'expérience du visiteur ou les statistiques du site.

La procédure des cookies

Le serveur envoie certaines données au navigateur du visiteur sous la forme d'un cookie. Le navigateur peut accepter le cookie. Si c'est le cas, il est stocké sous forme de texte brut sur le disque dur du visiteur. Maintenant, lorsque le visiteur arrive sur une autre page de votre site, le navigateur envoie le même cookie au serveur pour récupération. Une fois récupéré, votre serveur sait/se souvient de ce qui a été stocké précédemment.

Les cookies sont un enregistrement de données en texte clair de 5 champs de longueur variable :

  • Expires − La date d'expiration du cookie. S'il est vide, le cookie expirera lorsque le visiteur quittera le navigateur.

  • Domain − Le nom de domaine de votre site.

  • Path − Le chemin d'accès au répertoire ou à la page Web qui a défini le cookie. Ce champ peut être vide si vous souhaitez récupérer le cookie à partir d'un répertoire ou d'une page.

  • Secure − Si ce champ contient le mot "sécurisé", le cookie ne peut être récupéré que par un serveur sécurisé. Si ce champ est vide, aucune restriction de ce type n'existe.

  • Name=Value − Les cookies sont définis et récupérés sous forme de paires clé-valeur.

Les cookies ont été conçus à l'origine pour la programmation de CGI. Les données contenues dans un cookie sont automatiquement transmises entre le navigateur Web et le serveur Web, de sorte que les scripts CGI sur le serveur peuvent lire et écrire les valeurs des cookies qui sont stockées sur le client.

JavaScript peut également manipuler les cookies en utilisant la propriété cookie de l'objet Document.

Stockage des cookies

La façon la plus simple de créer un cookie est d'assigner une valeur de chaîne à l'objet document.cookie, qui ressemble à ceci:

document.cookie = "key1 = value1;key2 = value2;expires = date";

Ici, l'attribut expires est facultatif. Si vous fournissez à cet attribut une date ou une heure valide, le cookie expirera à une date ou à une heure donnée et par la suite, la valeur des cookies ne sera pas accessible.

Remarque - Les valeurs des cookies ne peuvent pas inclure les points-virgules, les virgules ou les espaces. Pour cette raison, vous pouvez utiliser la fonction JavaScript escape() pour encoder la valeur avant de la stocker dans le cookie. Dans ce cas, vous devrez également utiliser la fonction correspondante unescape() lorsque vous lirez la valeur du cookie.
Lecture des cookies

Lecture des cookies

Un cookie peut être lu aussi simplement qu'un cookie écrit, car la valeur de l'objet document.cookie est le cookie. Vous pouvez donc utiliser cette chaîne quand vous voulez accéder au cookie. La chaîne de caractères document.cookie conservera une liste de paires nom=valeur séparées par des points-virgules, où name est le nom d'un cookie et la valeur est sa valeur de chaîne.

Vous pouvez utiliser la fonction split() des chaînes de caractères pour décomposer une chaîne en clé et en valeurs comme suit :

<html>
   <head>   
      <script type = "text/javascript">
         <!--
            function ReadCookie() {
               var allcookies = document.cookie;
               document.write ("All Cookies : " + allcookies );
               
               // Récupérer toutes les paires de cookies dans un tableau
               cookiearray = allcookies.split(';');
               
               // Maintenant, retirez la paire de valeurs clés de ce tableau.
               for(var i=0; i<cookiearray.length; i++) {
                  name = cookiearray[i].split('=')[0];
                  value = cookiearray[i].split('=')[1];
                  document.write ("Key is : " + name + " and Value is : " + value);
               }
            }
         //-->
      </script>      
   </head>
   
   <body>     
      <form name = "myform" action = "">
         <p> click the following button and see the result:</p>
         <input type = "button" value = "Get Cookie" onclick = "ReadCookie()"/>
      </form>      
   </body>
</html>

Réglage de la date d'expiration des cookies

Vous pouvez prolonger la durée de vie d'un cookie au-delà de la session de navigation en cours en définissant une date d'expiration et en enregistrant la date d'expiration dans le cookie. Ceci peut être fait en réglant l'attribut 'expire' à une date et une heure.

Voici un exemple de la façon de prolonger la date d'expiration d'un cookie d'un mois:

<html>
   <head>   
      <script type = "text/javascript">
         <!--
            function WriteCookie() {
               var now = new Date();
               now.setMonth( now.getMonth() + 1 );
               cookievalue = escape(document.myform.customer.value) + ";"
               
               document.cookie = "name=" + cookievalue;
               document.cookie = "expires=" + now.toUTCString() + ";"
               document.write ("Setting Cookies : " + "name=" + cookievalue );
            }
         //-->
      </script>      
   </head>
   
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>      
   </body>
</html>

Suppression d'un cookie

Parfois, vous voudrez supprimer un cookie afin que les tentatives ultérieures de lecture du cookie ne retournent rien. Pour ce faire, il vous suffit de régler la date d'expiration (expire date) à une date antérieure.

Voici comment supprimer un cookie en réglant sa date d'expiration à un mois après la date du jour :

<html>
   <head>   
      <script type = "text/javascript">
         <!--
            function WriteCookie() {
               var now = new Date();
               now.setMonth( now.getMonth() - 1 );
               cookievalue = escape(document.myform.customer.value) + ";"
               
               document.cookie = "name=" + cookievalue;
               document.cookie = "expires=" + now.toUTCString() + ";"
               document.write("Setting Cookies : " + "name=" + cookievalue );
            }
          //-->
      </script>      
   </head>
   
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>      
   </body>
</html>

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

Ok