Easy-Micro


LANGAGE JavaScript
Cookies Javascript

Javascript et les cookies

Javascript Créer un cookie temporaire

<script type="text/javascript">
document.cookie = "moncookie=mon_nom";
alert(document.cookie);
</script>

note : document.cookie = "nom_du_cookie = valeur_du_cookie";

Javascript Créer un cookie permanent

<script type="text/javascript">
var le_nom = "moncookie";
var ma_valeur = "une_valeur";
document.cookie = le_nom + "=" + ma_valeur + ";expires="+"Sat,31-Dec-2099 00:00:01 GMT;domaine=www.easy-micro.org;path=/";
</script>


Note: domaine, et path sont des options facultatives.

Un cookie permanent avec expiration dans 30 secondes (soit 30 000 millisecondes)
<script type="text/javascript">
var date_expiration = new Date();
var expiration = 30000; // en milliseconde

date_expiration.setTime(date_expiration.getTime() + (expiration));
document.cookie = moncookie="mavaleur";expires=date_expiration;domain=www.easy-micro.org;path=/";
alert("le cookie arrivera à expiration à ce moment : "+date_expiration);
</script>


Javascript Formulaire qui permet de récupérer le login d'un utilisateur :

<form name="form1" method="get" action="">
Login : <input type="text" name="lelogin" maxlength="50" value="Eric" />
<input type="submit" value="Valider" />
</form>

<script type="text/javascript">
var lenom;
// Fonction (appelée par le formulaire) qui récupère le login de l'utilisateur et le stock dans un cookie nommé "login".

function recupelelogin() {

// pour infos, voici la technique de récupération (classique) via une méthode POST
// var lenom = document.form1.lelogin.value;

// récupération via une méthode GET (la variable est visible dans la barre d'adresse)
lenom = window.location.search;

// on récupère une chaîne à partir du 9ième caractère (?lelogin=)
// et jusqu'a la fin de la chaîne.
lenom = lenom.slice(9,lenom.length);

document.cookie = "login=" + lenom;

// Pour créer un cookie permanent , il faut rajouter une date d'expiration et/ou un domaine
// et/ou un répertoire de stockage (le / signifie niet). Exemple :
// document.cookie = "login=" + lenom + ";expires=Sat,31-Dec-2010 00:00:01 GMT;domaine=www.easy-micro.org;path=/";

// pour vérifier
if (lenom) { window.alert("Votre login : " + lenom); }
}

window.onload = recupelelogin;

</script>


Javascript Lecture du cookie

<script type="text/javascript">
var debut = document.cookie.indexOf("moncookie");
if( debut == -1) {
alert("il n'y a pas de cookie"); }
else {
// calcul de la taille du cookie
var fin = document.cookie.length;
// calcul du début et fin de la chaîne de caractère à extraire du cookie
alert(document.cookie.substring(debut,fin));
</script>

Note: la fonction indexOf() recherche dans une chaîne de caractères la première occurrence d'un caractère et retourne quelle est la position du signe dans la chaîne. Il est possible mais facultatif de transmettre comme deuxième paramètre la position à partir de laquelle, dans la chaîne de caractères, la recherche doit commencer.
La réponse de la méthode indexOf() renvoie -1 si la recherche n'a pas abouti.
La fonction substring() permet de rechercher une sous-chaîne de caractères. Syntaxe: substring(début, fin)

Javascript Mise à jour du cookie

<script type="text/javascript">
// calcul de la taille du cookie
var fin = document.cookie.length;
if(fin > 0) {
alert("Mon cookie est présent");
// calcul du début et fin de la chaîne de caractère à extraire du cookie
// 10 car le nom du cookie = 9 caractères (moncookie)
var valeur_du_cookie = document.cookie.substring(10,fin));
// conversion de variable au format texte vers format numérique pour pouvoir être incrémentée
var cookieenum = parseInt(valeur_du_cookie);
cookieenum = cookieenum + 1;
alert("C'est votre "+ cookieenum + "ème visite sur cette page"); document.cookie = "moncookie="+cookieenum+ ";expiures="+"Sat,31-Dec-2099 00:00:01 GMT; domain=www.easy-micro.org;path=/";
}
else {
alert("Mon cookie n'est pas là, c'est votre première visite");
// création du cookie
var le_nom = "moncookie";
var ma_valeur = 1;
document.cookie = le_nom +<+>"=" + ma_valeur + ";expires="+"Sat,31-Dec-2099 00:00:01 GMT;domain=www.easy-micro.org;path=/";
var debut = document.cookie.indexOf("moncookie");
}
</script>

Javascript Suppression du cookie

Pour supprimer un cookie, il suffit de le rappeler en lui réaffectant une date d'expiration antèrieure à la date du jour. Une fois le navigateur fermé, le cookie sera supprimé.

<script type="text/javascript">
if(document.cookie.length > 0) {
alert("Mon cookie est présent");
document.cookie=moncookie="ma_valeur;expires=Thu,01-Jan-1975 00:00:01 GMT;domain=www.easy-micro.org;path=/";
alert("Mon cookie a été suprimé"); }
else {
alert("Mon cookie n'est pas présent"); }
</script>


Suivez les aventures des skippers aquitains sur EasyVoile.com
Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]
Mardi 25 juin 2019 - Semaine 26 - Saint Prosper (Demain: Saint Anthelme)
Aujourd'hui, c'est l'anniversaire de George Michael (1963-56 ans), auteur-compositeur-interprète anglais. Autre 25 juin: 1991 - La Croatie et la Slovénie proclament lеur indépendance de la Yοugoslavie.
Haut de page Easy-Micro