Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/12/2006, 23h35   #1
Membre éprouvé
 
Homme
Inscription : mai 2006
Messages : 694
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : Belgique

Informations forums :
Inscription : mai 2006
Messages : 694
Points : 417
Points : 417
Par défaut [Cookies] Acceptation des cookies de session

Bonjour,

Mon site fonctionne avec des sessions conservées dans des cookies uniquement (pas de PHPSESSID=xxx dans l'URL). Est-il possible de savoir en PHP si le navigateur de l'utilisateur est correctement configuré pour accepter les cookies? Y a-t-il une variable?

Pour le moment la seule solution trouvée consiste à savoir si PHPSESSID=xxx se trouve dans le query de l'URL à l'aide d'expressions régulières. Ca marche très bien sous IE mais j'ai un problème avec FireFox car au premier lien cliqué PHPSESSID est là, ensuite il disparaît.

Merci pour toute solution éventuelle.

webrider
__________________
Pensez au tag
webrider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2006, 23h56   #2
Membre à l'essai
 
Inscription : août 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 48
Points : 22
Points : 22
PHPSESSID=xxx disparait, mais il reste présent en tant
que variable de session, donc tu peux le tester
par $_session['ta_variable'] =
au lieu de passer par le cookie
Gui92 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2006, 07h57   #3
Membre éprouvé
 
Homme
Inscription : mai 2006
Messages : 694
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : Belgique

Informations forums :
Inscription : mai 2006
Messages : 694
Points : 417
Points : 417
Je crois que je ne me suis pas bien fait comprendre. Je sais que c'est normal la disparition de PHPSESSID et je teste donc cela pour savoir si le client accepte les cookies ou pas.

PHPSESSID présent : n'accepte pas les cookies
PHPSESSID absent : accepte les cookies.

Cependant ça me pose un petit souci tout de même lors de la toute première visite : PHPSESSID est présent au premier clic et ensuite disparaît pour le restant de la session.

C'est pour cela que je demandais si il existait un autre moyen de tester l'acceptation des cookies par les navigateurs clients?

Merci.

webrider
__________________
Pensez au tag
webrider est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2006, 12h30   #4
Futur Membre du Club
 
Inscription : avril 2006
Messages : 38
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 38
Points : 18
Points : 18
Au lieu de tester la présence de PHPSID dans l'url, il serait peut être plus logique de tester la présence du cookie. Par contre, tu ne peux pas faire ce test juste après l'envoie du cookie :

Citation:
Les cookies ne seront accessibles qu'au chargement de la prochaine page, ou au rechargement de la page courante. Pour tester si un cookie a été défini avec succès, vérifiez la présence du cookie au prochain chargement de la page avant que le cookie n'expire.
Jukien est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 14h22   #5
Membre éprouvé
 
Homme
Inscription : mai 2006
Messages : 694
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 31
Localisation : Belgique

Informations forums :
Inscription : mai 2006
Messages : 694
Points : 417
Points : 417
Citation:
Envoyé par Jukien
Par contre, tu ne peux pas faire ce test juste après l'envoie du cookie :
Même si je fais le test après le session_start()? Donc pas de solution?
__________________
Pensez au tag
webrider est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h21.


 
 
 
 
Partenaires

Hébergement Web