Comment faire pour installer et obtenir le cookie avec JavaScript

Pour le travail, nous avons besoin de deux fonctions: la réception et la mise en biscuit

fonction de réglage des cookies

 fonction set_cookie (nom, valeur, expire)
 {
 if (! expire)
 {
 expires = new Date ();
 }
 document.cookie = nom + "=" + escape (value) + "; expires =" + expires.toGMTString () + "; path = /";
 }

obtenir la fonction de cookie

 fonction get_cookie (nom) {cookie_name = nom + "=";  cookie_length = document.cookie.length;  cookie_begin = 0;  tandis que (cookie_begin <cookie_length) {value_begin = cookie_begin + cookie_name.length;  if (document.cookie.substring (cookie_begin, value_begin) == cookie_name) {var value_end = document.cookie.indexOf ( ";", value_begin);  if (value_end == -1) {= value_end cookie_length;  } Retour unescape (document.cookie.substring (value_begin, value_end));  } Cookie_begin = document.cookie.indexOf ( "", cookie_begin) + 1;  if (cookie_begin == 0) {break;  }} Return null;  } 

Exemple définir et obtenir

Dans l'exemple, en cliquant sur «Ajouter» est écrit dans le cookie de navigateur. Nous faisons cela avec l'aide d'une fonction ici:

 fonction save_cookie () {
  var name = "exemple" // le nom du cookie
  var tmp = "Bonjour, je suis votre cookie!";  // Ecrire la valeur
  expires = new Date ();  // Obtenir la date actuelle
  expires.setTime (expires.getTime () + (1000 * 86400 * 365));  // Calculer la durée de vie des cookies
  set_cookie (nom, tmp, expire);  // Définit le cookie via la fonction set_cookie
 }

L'appel de cette fonction en html:

<a href="javascript:save_cookie();">Установка</a>

Pour lire la, fonction cookie utilisation get_cookie () et pour plus de clarté, nous écrivons la valeur résultante dans un html-couche. Nous faisons cela avec l'aide de cette fonction:

 fonction write_cookie () {
  // Obtenir le cookie et écrire la valeur dans la couche de couche utilisant innerHTML
  document.getElementById ( 'couche') innerHTML = get_cookie ( 'exemple') .; 
 }

L'appel de cette fonction en html:

<a href="javascript:write_cookie();">Чтение</a>
// слой, в котором показываем значение cookie
<div id="layer" style="padding:5px;"></div>

Un exemple de réseau de conservation et de réception

Installation et réception cookies similaire à ceux décrits dans l'exemple précédent, la seule différence est que le tableau doit être traité avant la lecture et l'enregistrement.

Nous obtenons les valeurs et écrire le cookie en utilisant la fonction save_array ():

 fonction save_array () {
  var myArray = [1, 2, "bonjour"];  // Tableau des valeurs
  var tmp = "";
  if (myArray! = null) {
 
  // Boucle à travers le réseau, la collecte de la valeur d'une variable et séparés par une virgule
  for (i in myArray) 
  {
  if (myArray [i]! = "") {
  tmp = tmp + myArray [i];
  if (i! = monTableau.length-1) {
  tmp = tmp + ",";
  }
  }
  }
  }
  expires = new Date ();  // Obtenir la date actuelle
  expires.setTime (expires.getTime () + (1000 * 86400 * 365));  // Calculer la durée de vie des cookies
  set_cookie ( "exemple", tmp, expire);  // Définit le cookie via la fonction set_cookie
 }

L'appel de cette fonction en html:

<a href="javascript:save_array();">Установка</a>

Nous lisons la valeur du cookie et l'affichage dans un html-couche

 fonction write_array () {
  var getmyArray = get_cookie ( 'exemple');  // Lire le cookie
  var tmp = '';
  getmyArray = getmyArray.split ( ",") // analyser la valeur, de le mettre dans un tableau
  for (i = 0; i <getmyArray.length; i ++) // Boucle dans le tableau et le formater pour l'affichage
  {
  tmp + = getmyArray [i];
  if (i! = getmyArray.length) {
  tmp + = "<br /7>";
  }
 }
  // Affichage du tableau dans une couche avec le layer2 identificateur
  document.getElementById ( 'layer2') innerHTML = tmp .; 
 }

L'appel de cette fonction en html:

<a href="javascript:write_array();">Распечатать массив</a>
// слой, в котором показываем значение cookie
<div id="layer2" style="padding:5px;"></div>