[php] gestion des sessions avec IE

Résolu/Fermé
cypher974 Messages postés 2 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 16 décembre 2006 - 4 nov. 2006 à 11:14
 JarJarBings - 13 avril 2015 à 15:10
Bojour à tous !!!

Voici mon problème :

Avec Internet explorer, les sessions (en php) ne fonctionnent pas !!!! Je ne pense pas que le problème viens de mon code, car ça fonctionne bien avec Mozilla firefox.

Voici mon site http://www.runspor.com/fg

Pour esseyer de résoudre ce problème j'ai effectué :
- vider le cache des navigateurs pour être sure que le client ne charge pas les données à partir de son cache <meta http-equiv="pragma" content="no-cache"/> --> sans résultat
- en bidouillant un petit peu je me suis rendu compte que si on charge mon site à partir de l'url de type http://adresseIP/fg, ça fonctionné parfaitement!!!! J'ai donc pensé à faire une redirection de mon site (http://www.runspor.com/fg) vers l'url http://adresseIP/fg. ---->Mais un autre problème est apparue. Il s'agit des fenêtre popup très mal géré par Firefox!! J'ai donc abandonné cette solution!!

Aujourd'hui je suis toujours au même point !!!


Ce serait formidable que quelqu'un m'aide et trouve la solution!!!!
A voir également:

15 réponses

Salut,

Verifie que ton ServerName ne contient pas de '_' (ou d'autres caracteres non litteraux)
J'ai eu le meme probleme, j'ai modifie ma conf Apache (j'ai enleve le _ qui trainait dans mon ServerName) et comme par magie les sessions se sont mises a fonctionner avec IE6.
14
1 giga-merci!
0
un grand merci, ça m'a évité des heures de debugge ! IE for life
0
"IE for life"
t'es fou toi ^^
0
Merci pour les réponse (surtout ben).

Moi j'ai ajouté
header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
en dessous de session_start();

Depuis plus de problème...
6
Merci beaucoup
Merci beaucoup
Merci beaucoup
0
merciiiiiiiiiiiiiiiiiiiiiiii
0
Merci mille fois !
0
Merci pour cette réponse!



header('P3P: CP="CAO PSA OUR"'); 
3
THANK YOU! et merci !!!!! voila l'explication détaille de ce qui se passe (en anglais)

http://james.jamesandkristin.net/2005/11/18/php-session-cookie-in-frames-using-internet-explorer

Mon pb: site en PHP avec une redirection par Frame, les données de la session ne sont pas transmises au site chargé dans le Frame à cause la la politique de sécurité par default de IE. En Chrome,Mozilla etc tout va bien... Sacre IE.... and sacre politique de sécurité....;

Aprés
session_start();
header('P3P: CP="CAO PSA OUR"');

Note: j'ai ajoute ça une seule fois dans la première page qui démarre la session .... pas dans toutes les pages... ça marche, la question est pourquoi..... à creuser

a voir aussi http://www.w3.org/P3P/
0
Tout d'abord bonjour!

J'ai une petite application javascript/php qui utilise les session en php et j'ai également un probleme avec ces ... de session.

Au chargement de la page je défini une variable de session: $_SESSION["var"]=value; tout ce qu'il y a de plus normal.

Ensuite je lance une requête xmlhttprequest vers le serveur à l'aide de prototype.js.

Et la, quand je suis sur le serveur, je ne retrouve pas ma variable de session, mais uniquement sous IE (6 ou 7), ça marche nickel sous firefox.

J'ai cherche toute la journé (la j'en peux plus je suis limite nervous breakdown), j'ai essayé plein de chose:

ini_set("url_rewriter.tags", "a=href,area=href,frame=src,fieldset=");

ou

header('P3P: CP="CAO PSA OUR"')

etc...

Ca marche toujours pas (je les ai peut etre pas utilisé comme il faut).

La j'aimerais savoir si quelqu'un connait bien ce probleme, et s'il y a une solution bein détaillé, à part ne plus utiliser ie, ou ne plus utiliser les session (j'ai reglé partiellement le probleme avec un cookie).

Merci d'avance
2
Salut!
As tu bien démarrer une session sur toute tes pages (sur la première ligne)?
Es tu sûr que ta session s'enregistre bien au bon endroit?
Si oui, il y a surement une erreur de code au moment où tu souhaite récupérer la valeur de la session.

Sinon vérifie aussi que tes options internet sont bien configurées.
0
coyote > pandalille
2 avril 2008 à 21:19
Bonjour,

j'avais eu le meme probleme il y a quelque temps puis j'ai appris sur le web que IE ne transmettait pas les cookies au serveur lors de demande de fichier Javascript. J'ai donc du passer par les session d'URL.
Si je me trompe, faite moi signe, ca m'interesse.

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Un GIGANTESQUE MERCI pour Francesco !!!!!

J'avais ce put*** de problème de session avec IE6 au boulot (je suis développeur web), et cela faisait 15 jours que je testais tout. Et bien là, maintenant, grâce à Francesco, ça remarche ENFIN !!!

J'avais bien un underscore ("_") dans mon server name (pour différencier les noms car j'en ai plusieurs avec presque le même nom).

Donc merci infiniment !!

Lideln
2
Utilisateur anonyme
26 déc. 2010 à 01:38
Salut,
j'ai le presque le même problème, en faite, j'ai 3 formulaire dans un page, d'essai de passé d'un formulaire a une autre avec un test sur les session, parexemple, dans le formulaire n1 je donne une session ( $_SESSION['formun'] = 'formun' ), pour passé au formulaire n2 je fait un test if ( isset($_SESSION['formun']) ),

Cela fonctionne bien sur firefox et chrome, mais pas avec internet explorer et opera,

Merci pour votre aide
1
Salut,

J'ai exactement le même problème.
Plus bas la question etait déjà posée, la reponse etait de mettre <meta http-equiv="pragma" content="no-cache"/> pour empecher le navigateur de mettre en cache, mais rien y change.

Toujours pareil, rien de passe.

Le big problème pour moi : c'est une marque blanche sur le site d'origine
ca marche avec tous les navigateurs et que celui-ci est dans une iframe cela ne marche plus avec IE ????!!!

Merci d'avance
0
benkeeper Messages postés 81 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 26 janvier 2008 45
9 févr. 2007 à 12:15
J'avais le même problème.

Une page contenant une frame qui redirige vers un autre site. IE n'acceptait pas les cookies de cet autre site et donc ne prenait pas en compte la session.

Pour résoudre ce problème, il faut indiquer à IE qu'il peut accepter les cookies sans problème.

Pour cela, il suffit d'ajouter la ligne suivante :

header('P3P: CP="CAO PSA OUR"');

en début de script sur le site pointé (attention, aucun caractère ne doit être envoyé avant cette ligne, y compris un espace ou un retour à la ligne).

Et ça marche ;)


Ben
0
Illilium > benkeeper Messages postés 81 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 26 janvier 2008
9 févr. 2007 à 13:17
Salut benkeeper,

C'est enorme ta reponse !!!!!!! apparemment ca marche nickel, faut que je fasse encore des tests mais pour l'instant c'est impecc !!!

Comment tu as trouvé cette solution ?

Enorme merci.

ililium
0
benkeeper Messages postés 81 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 26 janvier 2008 45 > Illilium
9 févr. 2007 à 14:26
Alors j'ai passé la matinée à chercher d'abord tout seul puis dans Google et autre et il n'y avait rien de satisfaisant.

A la fin j'ai vraiment commencé à craquer puis je suis allé tout simplement sur le site de doc PHP, dans le chapitre "sessions", c'est indiqué par un utilisateur (10i ou 11i message).

Voir ici : https://www.php.net/manual/fr/ref.session.php

Comme quoi parfois on cherche ses lunettes partout alors qu'elles sont sur notre nez :)


Ben
0
Kobayashi > Illilium
17 févr. 2007 à 16:21
Un gros Bisous pour Ben !!

avant de le trouver ce tips on aurais pu courir merci :D
0
unwebmaster > benkeeper Messages postés 81 Date d'inscription samedi 4 septembre 2004 Statut Membre Dernière intervention 26 janvier 2008
13 janv. 2015 à 09:08
merci , ça marche encore aujourd'hui.
dans ma problématique où j'utilise ds frames (oui, je sais, les frames...)
0
Bonjour,

Je remet cette discussion au goût du jour parce que j'ai le même problème.
C'est à dire que mes sessions ne fonctionne pas sous IE et Chrome (mais sous FF oui), elles fonctionnent avec tous les navigateurs en local, elles fonctionnent avec tous les navigateurs avec l'adresse ip du serveur (comme indiqué dans le premier message).

Mais j'ai essayé la solution du header et elle ne fonctionne pas chez moi.
Je suis hébergé sur un dédié chez OVH.

Auriez vous du nouveau ?

Bonne journée,
Olivier
0
Nom de *, je n'y croyais même pas. J'utilisais le caractère souligné dans un nom de domaine et je n'avais pas pigé du tout pourquoi un echo côté serveur ne s'affiche pas sur le nagivateur. Je ne parle même pas des cookies, mais un "echo $_SESSION['var'] ;" tout simple, ça me donnait vide sur IE. C'est totalement délirant !

En tout cas, merci francesco.
En passant, oubliez pas de vider les cookies après avoir enlever le "_" du nom de domaine.
0
Un TRES grand merci à francesco pour sa réponse!!!!

Ca faisait 3h que je m'arrachai les cheveux sur ce problème....

IE est vraiment le navigateur le plus pourri de tout les temps!!
0
Bien dit
0
BENKEEPER TU ME SAUVES LA VIE, et mon appli qui merdait en prod !!!! Tout ca pour un underscore !
0
stephdemars Messages postés 1 Date d'inscription vendredi 24 avril 2009 Statut Membre Dernière intervention 6 décembre 2010
6 déc. 2010 à 11:57
Salut à tous !

J'ai exactement le même problème. Je développe une appli avec Symfony et les sessions sont perdues sous IE alors que ça marche très bien sous Chrome et Firefox.
Cependant je suis hébergé sous OVH et il n'y a pas d'underscore dans mon hostname...
Comment puis-je faire pour résoudre ce problème ?

Merci beaucoup !
0
nems_raiden, je t'aurais bien mis +50 ^^ merci à toi!
0
Merci nems_raiden, votre solution marche nickel !!!
0
merci beaucoup neims_raiden,c génial goooooooooooood!!!
0
merci neims_raiden tu me sauves la vie !!
0