Créer des cookies avec du JavaScript

29 Novembre 2013 à 11:30 Lemon Cake

Je ne publierai plus rien sur ce blog. Un nouveau blog existe maintenant. Il se nomme Hardly Smart.

Vous pourrez y retrouver des astuces plus larges sur l'informatique ainsi que mes anciens billets de blog.

Je vous souhaite une bonne lecture sur Hardly Smart.


Un cookie en informatique est un ensemble de fichiers qui sont stockés sur votre ordinateur afin de charger plus facilement des informations. Ainsi grâce à eux, vous pouvez rester connecté à un site même après plusieurs jours sans y être venu. Et oui car la plupart du temps quand vous cocher la petite case "Se souvenir de moi", le script de connexion va créer des cookies pour vous reconnaître plus facilement. Le système de panier sur les sites de e-commerce fonctionnent sur le même principe.

Des fois il se peut que vous reveniez sur un site plusieurs jours après mais vous n'êtes pas reconnu, car les cookies pour des raisons de sécurités ont une date d'expiration qui est modifiable.

Et bien aujourd'hui je vous propose trois petites fonctions JavaScript qui vous aiderons à gérer des cookies sur un serveur n'ayant pas PHP (ce qui est fréquent chez certains hébergeur gratuit).

Création des cookies

La création des cookies est très simple à mettre en place.

  • c_name : Le nom du cookie que vous souhaitez créer
  • value : Ce que vous souhaitez stocker dans ces cookies
  • exdays : Le nombre de jours avant l'expiration de votre cookie

function setCookie(c_name, value, exdays) { var date = new Date(); date.setTime(date.getTime()+(exdays * 24 * 60 * 60 * 1000)); var exdate = "; expires="+date.toGMTString(); document.cookie = c_name + "=" + value + exdate; }

Récupération du cookie

  • c_name : Nom du cookie à récupérer

function getCookie(c_name) { var c_value = document.cookie; var c_start = c_value.indexOf(" " + c_name + "="); if (c_start == -1) { c_start = c_value.indexOf(c_name + "="); } if (c_start == -1) { c_value = null; } else { c_start = c_value.indexOf("=", c_start) + 1; var c_end = c_value.indexOf(";", c_start); if (c_end == -1) { c_end = c_value.length; } c_value = unescape(c_value.substring(c_start,c_end)); } return c_value; }

Suppression du cookie

  • c_name : Nom du cookie à supprimer
function delCookie(c_name) {
    setCookie(c_name, "", -1);
}

Mise en pratique

Je vais maintenant vous montrez comment se servir de ces petites fonctions.

Nous allons pour cela faire un système qui sauvegarde notre nom. Si un cookie avec notre nom existe il nous dira bonjour, sinon il nous demandera de le rentrer.

Démo : http://jsfiddle.net/babeuloula/NkAQ2/2/

Cliquez sur "Run" en haut dans la barre des menus pour lancer le script une deuxième fois.

Conclusion

Vous savez maintenant comment mettre en place des cookies en quelques lignes.

Cependant, les cookies ont un problème. Ils peuvent être interceptés par les pirates qui sont sur le même réseau que vous s'ils ne sont pas sécurisés. Par exemple Facebook, si dans la barre d'adresse, vous n'êtes pas en https, vous pouvez être sur que votre session est stocké en cookie non sécurisée et donc peut être réutilisé par un pirate pour utiliser votre compte sans que vous le sachiez.

C'est donc pour cela qu'en Wifi Public, n’acceptez jamais les cookies ou naviguez en "Navigation privé" qui ne stocke rien. Et quand vous faites des achats vérifiez bien que vous êtes en https et que le cadenas est bien fermés.

Demo

2013-12-08 19:16:28

Source

http://lemon-cake.fr/?p=166

Articles liés

Les commentaires ont été désactivés.

0 commentaire