Javascript et cookies ?
help me
-
Groarh Messages postés 682 Date d'inscription Statut Membre Dernière intervention -
Groarh Messages postés 682 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j utilise ce script pour afficher une page des news une fois par semaine pour chaque visiteur unique .
comment je peux modifie ce script pour afficher les news 2 fois par semaine pour chaque visiteur unique ?
voici le script . merci de votre aide
j utilise ce script pour afficher une page des news une fois par semaine pour chaque visiteur unique .
comment je peux modifie ce script pour afficher les news 2 fois par semaine pour chaque visiteur unique ?
voici le script . merci de votre aide
<SCRIPT LANGUAGE="JavaScript"> var nbJour =7; var page = "News.html"; function GetCookie (name) { var arg = name + "="; var alen = arg.length; var clen = document.cookie.length; var i = 0; while (i < clen) { var j = i + alen; if (document.cookie.substring(i, j) == arg) return getCookieVal (j); i = document.cookie.indexOf(" ", i) + 1; if (i == 0) break; } return null; } function SetCookie (name, value) { var argv = SetCookie.arguments; var argc = SetCookie.arguments.length; var expires = (argc > 2) ? argv[2] : null; var path = (argc > 3) ? argv[3] : null; var domain = (argc > 4) ? argv[4] : null; var secure = (argc > 5) ? argv[5] : false; document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : ""); } function DeleteCookie (name) { var exp = new Date(); exp.setTime (exp.getTime() - 1); var cval = GetCookie (name); document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString(); } var exp = new Date(); exp.setTime(exp.getTime() + (nbJour*24*60*60*1000)); function getCookieVal(offset) { var endstr = document.cookie.indexOf (";", offset); if (endstr == -1) endstr = document.cookie.length; return unescape(document.cookie.substring(offset, endstr)); } function verifNbOuverture() { var cpt = GetCookie('cpt'); if (cpt == null) { cpt=2; SetCookie('cpt', cpt, exp); document.location.href = page; } else { cpt++; SetCookie('cpt', cpt, exp); } } verifNbOuverture(); </script>
A voir également:
- Javascript et cookies ?
- Supprimer les cookies - Guide
- Telecharger javascript - Télécharger - Langages
- Javascript void 0 c'est quoi ✓ - Forum Réseaux sociaux
- La cause de ce problème peut être la désactivation ou le refus des cookies ✓ - Forum Mozilla Firefox
- Javascript echo ✓ - Forum PHP
2 réponses
Dis-moi, c'est du script de la vieille école que tu nous as trouvé là :p
Sans regarder, je dirais que la solution à ton problème se trouve à la première ligne de ton code. une variable qui s’appelle nbJours et qui est égale à 7, dans un script qui renouvelle un cookie tous les sept jours, hmm, tiens, doit y avoir un truc…
En regardant un peu mieux j’ai l’impression qu’il manque quelque chose, mais ce n’est peut-être qu’une impression.
Si tu ne trouves pas solution à ton problème, j’y regarderai d’un peu plus près ;)
Sans regarder, je dirais que la solution à ton problème se trouve à la première ligne de ton code. une variable qui s’appelle nbJours et qui est égale à 7, dans un script qui renouvelle un cookie tous les sept jours, hmm, tiens, doit y avoir un truc…
En regardant un peu mieux j’ai l’impression qu’il manque quelque chose, mais ce n’est peut-être qu’une impression.
Si tu ne trouves pas solution à ton problème, j’y regarderai d’un peu plus près ;)
C’est toi qui as fait le code ? Ça ressemble à du C* ou du Java (le « return null » ou encore la gestion pour ainsi dire particulière des arguments dans Setcookie). Comme dirait Christophe Porteneuve, et sans vouloir vexer qui que ce soit (^^), « à vouloir écrire du Java comme on faisait du C++, on ne produit que du mauvais Java ». Surtout ne le prends pas mal, je suis d’humeur sarcastique ce soir… Sinon, je disais vieille école à cause des balises en majuscules et de l’attribut langage qui est déprécié (à la place il faut mettre type="text/javascript" pour satisfaire à la norme MIME).
Enfin bref, j’avais pas compris ta question, je croyais que tu voulais doubler la fréquence des news (genre passer nbJours à 3 ou 4).
Bien. Pour ton problème, j’ai envie de dire : cpt-- à la place de cpt++ dans la fonction verifNbOuverture, et un test if(cpt > 0) qui autorise l’accès aux news (j’imagine que le « document.location.href = page » conduit aux news).
J’espère que je me gourre pas ;)
Enfin bref, j’avais pas compris ta question, je croyais que tu voulais doubler la fréquence des news (genre passer nbJours à 3 ou 4).
Bien. Pour ton problème, j’ai envie de dire : cpt-- à la place de cpt++ dans la fonction verifNbOuverture, et un test if(cpt > 0) qui autorise l’accès aux news (j’imagine que le « document.location.href = page » conduit aux news).
J’espère que je me gourre pas ;)
oui var nbJour =7; c est pour que le cookies reste 7 jour au navigateur du visiteur pour pas a chaque fois qui visite
mon site la fenetre de news s ouvre :)
donc je veut que la page news s ouvre 2 fois par semaine , meme au meme journer ,apres le visiteur doit attendre 7 jours pour qu'il puis regarder les nouveaux news .
merci d avance