CommentCaMarche
Recherche
Posez votre question Signaler

[php] gestion des sessions avec IE [Résolu]

cypher974 2Messages postés samedi 4 novembre 2006Date d'inscription 16 décembre 2006Dernière intervention - Dernière réponse le 13 janv. 2015 à 09:08
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!!!!
Lire la suite 
Réponse
+13
moins plus
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.
junius- 16 juin 2012 à 17:24
1 giga-merci!
Répondre
ElSinus- 15 sept. 2014 à 11:03
un grand merci, ça m'a évité des heures de debugge ! IE for life
Répondre
Ajouter un commentaire
Réponse
+6
moins plus
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...
Loka- 14 sept. 2011 à 03:04
Merci beaucoup
Merci beaucoup
Merci beaucoup
Répondre
zak- 20 mai 2013 à 16:18
merciiiiiiiiiiiiiiiiiiiiiiii
Répondre
c3liu3- 13 juin 2013 à 17:50
Merci mille fois !
Répondre
Ajouter un commentaire
Réponse
+3
moins plus
Merci pour cette réponse!



header('P3P: CP="CAO PSA OUR"'); 
Eugen- 1 juin 2012 à 18:47
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/
Répondre
Ajouter un commentaire
Réponse
+2
moins plus
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
pandalille- 25 févr. 2008 à 16:36
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.
Répondre
coyote- 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
Répondre
Ajouter un commentaire
Réponse
+2
moins plus
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
Ajouter un commentaire
Réponse
+1
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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
benkeeper 81Messages postés samedi 4 septembre 2004Date d'inscription 26 janvier 2008Dernière intervention - 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
Répondre
Illilium- 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
Répondre
benkeeper 81Messages postés samedi 4 septembre 2004Date d'inscription 26 janvier 2008Dernière intervention - 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 : http://fr.php.net/manual/fr/ref.session.php

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


Ben
Répondre
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
Répondre
unwebmaster benkeeper - 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...)
Répondre
Ajouter un commentaire
Réponse
+0
moins plus
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
Ajouter un commentaire
Réponse
+0
moins plus
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.
Ajouter un commentaire
Réponse
+0
moins plus
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!!
ori- 22 oct. 2010 à 10:00
BENKEEPER TU ME SAUVES LA VIE, et mon appli qui merdait en prod !!!! Tout ca pour un underscore !
Répondre
Ajouter un commentaire
Réponse
+0
moins plus
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 !
Ajouter un commentaire
Réponse
+0
moins plus
nems_raiden, je t'aurais bien mis +50 ^^ merci à toi!
Ajouter un commentaire
Réponse
+0
moins plus
Merci nems_raiden, votre solution marche nickel !!!
Ajouter un commentaire
Réponse
+0
moins plus
merci beaucoup neims_raiden,c génial goooooooooooood!!!
Ajouter un commentaire
Réponse
+0
moins plus
merci neims_raiden tu me sauves la vie !!
Ajouter un commentaire
Ce document intitulé «  [php] gestion des sessions avec IE  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.