cookie non détecté

atomikado
WRInaute discret
WRInaute discret
 
Messages: 154
Inscription: 22 Sep 2003

cookie non détecté

Message le Mar Mar 18, 2008 16:57

Bonjour,

En haut de ma page, je pose un cookie (qui contient la valeur d'une variable)
Plus bas, dans la même page, je détecte si le cookie est posé ou pas if (isset($_COOKIE["ma_variable"])) { ...}

Lors du 1er chargement de la page, le cookie n'est pas détecté, il faut que je recharge ma page pour qu'il le soit !

Comment faire pour qu'il soit détecté lors du 1er chargement ?

Merci :)


webmasterlamogere
WRInaute passionné
WRInaute passionné
 
Messages: 1874
Inscription: 17 Déc 2006

Message le Mar Mar 18, 2008 17:44

il faut plutôt définir une variable globale dans ce cas.

bidiris
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 18
Inscription: 15 Aoû 2007

Message le Mar Mar 18, 2008 18:01

Les informations liées aux cookies sont envoyées via l'entete HTTP. Les informations du header sont actualisées lors du chargement de la page.

Ici, ta page n'est pas rechargée, l'info n'est donc pas mise à jour dans ton script PHP.

As-tu vraiment besoin de cette info côté serveur ?

En javascript, tu peux tester l'acceptation des cookies avec la propriété cookieEnabled de l'objet navigator.

if ( navigator.cookieEnabled )
document.write( "cookies acceptés par le navigateur" );


nickargall
WRInaute accro
WRInaute accro
 
Messages: 6339
Inscription: 13 Juin 2005

Message le Mar Mar 18, 2008 18:04

C'est normal
Le cookie ne sera généré que côté client, c'est à dire quand la page sera envoyée au navigateur, donc quand tout le code PHP aura été exécuté.
Donc le premier coup ton PHP va demander la création du cookie mais ne pourra pas le lire, vu qu'il n'existe pas
Et le second coup ben le cookie est créé donc il peut le lire

je sais pas si je suis bien clair là ... :)
Edit: Bing grillé par une réponse bien plus complète en plus :)

jarreweb
WRInaute discret
WRInaute discret
 
Messages: 192
Inscription: 12 Sep 2003

Message le Mar Mar 18, 2008 18:17

d'ailleurs le problème rencontré par atomikado est expliqué dans la doc
http://fr.php.net/manual/fr/function.setcookie.php (1er point du paragraphe "erreurs communes")


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités