qui représente des numéros de département, document.cookie devient null à partir du 30 eme département, pourtant il ne semble pas que la chaîne soit trop longue j'ai testé avec une chaine de 1400 caractères sans virgules et la tout ce passe bien, j'ai l'impression que sa viendrai de l'encodage de la chaine par la fonction escape avant l'écriture du cookie mais je n'en suis pas certain.
Je ne comprends pas pourquoi IE7 n'arrive pas à écrire cette chaine alors que FireFox lui le fait sans souci.
Quelque chose cloche mais je ne vois pas du tout où, si vous avez une idée je suis tout ouïe !
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 4 févr. 2008 à 14:58
Problème résolu, de plus je me suis rendu compte que j'écrivais beaucoup trop de choses dans mes cookies et queje dépassais la limite de taille autorisée par ie.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 févr. 2008 à 12:14
Bonjour,
tu fais quelque chose de particulier probablement (?)
parce que avec ou sans escape, ça semble baigner
<script type="text/javascript">
function ecr()
{ var da = new Date();
var d = new Date( Date.parse(da) + ( 1000*60*60*24*365 ) );
document.cookie = escape("01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,21,22,23,24,25,26,27,28,29,2A,2B,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95") +
";expires=" + d.toGMTString() + ";" ;
}
function lir()
{ alert(document.cookie); }
</script>
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 13:35
Justement rien de particulier j'écrit juste d'autres cookies avant, et si je supprime l'écriture ce ce cookie en particulier tout ce passe bien c'est pour sa que je bloque :(
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 13:52
J'ai fait un test en détruisant tout les cookies avant d'écrire celui la et sa marche mais il y à un os si sa viens de la taille de mon document.cookie parce que si j'enlève l'écriture du cookie qui fait planter sa marche bien et mon document.cookie est plus lourd que si j'ajoutait juste celui qui plante à la suite.
Apparement l'ordre d'écriture ne change rien j'ai essayé au cas ou mais ca ne change rien.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 févr. 2008 à 15:21
ah... je ne sais pas si je n'ai pas un souci pour recevoir les réponses....
j'ai changé d'adresse mail et certaines réponses me parviennent, pas toutes...
<hr /> Cordialement Bul «mon Site» «M'écrire»
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 15:49
J'ai essayé aussi j'ai même problème du moment que que met pas de ";" sa n'a aucune incidence l'érreur reste.
Sa à l'air d'être un problème de longeur et pourtant comme j'ai pu le tester ce n'est pas clairement sa si je suprimme l'écriture de ce cookie tout marche bien et la longeur totale de document.cookie dépasse les 4000 caractères.
Plusieurs de mes autres cookies on une structure bien plus complexe que celui la et s'enregistrent correctement.
Si j'essaye de n'enregistrer que ce cookie sa marche bien.
Si je détruit les autres cookie avant de l'écrire sa marche aussi.
Si j'écrit tout mes cookie sauf celui la sa marche.
Dès que j'essaye d'écrire ce cookie avec les autres c'est fini.
Et pourtant il n'as rien de bien sorcier et je ne dépasse pas la limite de taille d'un cookie.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 févr. 2008 à 15:56
je relis seulement ta réponse...
Si j'essaye de n'enregistrer que ce cookie sa marche bien
c'est vrai que je n'ai essayé qu'avec 1 cookie, mais
comment tu fais pour avoir plusieurs cookies ?
un cookie est unique pour un site pour un visiteur.... non ?
<hr /> Cordialement Bul «mon Site» «M'écrire»
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 16:02
Ah ^^ sa voudrai dire qu'il y à quelque chose qui s'écrit mal et qu'il fusionnerai 2 cookie s ?
Je suis telement à cours d'idées la, surtout que sous FireFox tout se passe à merveille.
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 16:04
Oui oui il n'y en à bien qu'un seul général en fait c'est juste que j'écrit dans document.cookie plusieures fois avec des noms différents, j'ai une fonction
writeCookie(name, value), et quand je dit que j'en ai plusieurs c'est juste le nom qui change ;)
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 févr. 2008 à 16:11
un cookie c'est un string. pas plus.
après on y stocke ce qu'on veut ( possiblement en ajoutant des données
mais après avoir relu le contenu "précédent" ! )
et on réexploite comme il faut [ j'allais dire comme on peut ;o) ]
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 16:14
Je m'exprime mal :p
Quand je parle de fusion de 2 cookies je voulais dire que quelque par il manquerai le ';' séparateur entre 2 cookies différents dans document.cookie.
>> pas d'erreurs sous IE ? Quésaquo ? ^^ J'ai dit pas d'erreur sous FireFox :p
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 févr. 2008 à 16:17
>>J'ai dit pas d'erreur sous FireFox :p
et alors.... il y a des différences entre IE et FF ( doux euphémisme )
et un truc qui fonctionne chez l'un peut très bien queuter chez l'autre
( et lycée de versailles )
je suis de plus en plus persuadé qu'il y a des erreurs dans tes fonctions qui
gèrent les cookies ( avec IE s'entend )
<hr /> Cordialement Bul «mon Site» «M'écrire»
Morphinof
Messages postés255Date d'inscriptionvendredi 20 avril 2007StatutMembreDernière intervention 9 août 20134 1 févr. 2008 à 16:17
Tout à fait d'accord mes cookie ne sotn que des chaines, je les split() ensuite selon certains séparateur pour en faire des tableaux que je pourrait exploiter d'ou les ',' et les '%'
Voici les 3 fonctions que j'utilise pour écrire mes cookies :
function writeCookie(name, value){
var argv=writeCookie.arguments;
var argc=writeCookie.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 getCookieVal(offset)
{
var endstr=document.cookie.indexOf (";", offset);
if (endstr==-1) endstr=document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function readCookie(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;
}
//alert('Le cookie '+name+' n\'existe pas');
return null;
}