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 14/05/2008, 17h27   #1
Membre éclairé
 
Avatar de nicoaix
 
Homme
Chef de projet MOA
Inscription : décembre 2004
Messages : 562
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2004
Messages : 562
Points : 325
Points : 325
Par défaut [Cookies] Variable de session vide sous IE mais pas sous FF

Bonjour,
Tout le problème est dans le titre : J'utilise une page index.php avec un formulaire (login/password) qui est traité dans la page login.php qui renvoie (si l'utilisateur est trouvé dans la base mysql) vers la page main.php.

En début de chaque page les 2 premières lignes sont:
session_name('ama');
session_start();

Dans la page login.php si l'utilisateur est trouvé j'initialise les variables de session:
$_SESSION["login"] = $login;
$_SESSION["user_id"] = $id;

ensuite je renvoie vers la page main.php ainsi:
header("Location: main.php");


Si je vérifie les variables dans la page login.php elles sont correctement remplies, mais dans la page main.php elles sont vides.
Ceci se produit sous IE (7 ou 6) mais pas sous firefox.
Petite précision:
IE crée 2 fichiers de session 1 rempli et 1 vide...
D'où cela peut-il provenir et comment corriger ce problème?

Merci
nicoaix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2008, 18h19   #2
Membre émérite
 
Avatar de julien.63
 
Inscription : décembre 2005
Messages : 1 322
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 1 322
Points : 981
Points : 981
Envoyer un message via MSN à julien.63
salut
c'est bizarre que tu aies un comportement différent car les sessions (sauf erreur de ma part) sont gérées sur le serveur.
Citation:
IE crée 2 fichiers de session 1 rempli et 1 vide...
où sont-ils créés? que contient celui qui est rempli?
julien.63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2008, 18h27   #3
Membre éclairé
 
Inscription : mai 2008
Messages : 359
Détails du profil
Informations forums :
Inscription : mai 2008
Messages : 359
Points : 397
Points : 397
Les deux navigateurs ont-ils un réglage similaire au niveau des cookies ?
(si session.id est transmis par cookie, bien sûr).
Sinon, essaie temporairement de passer l'id par URL, pour voir.
Tsilefy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2008, 18h31   #4
Membre éclairé
 
Avatar de nicoaix
 
Homme
Chef de projet MOA
Inscription : décembre 2004
Messages : 562
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2004
Messages : 562
Points : 325
Points : 325
Le problème vient de la config de mon serveur car je viens de tester les pages sur un serveur en production et ça fonctionne correctement.
Il va donc falloir maintenant que je me plonge dans la config de mon serveur local pour trouver où ça peut déconner.
Si quelqu'un à une piste (je pense notamment à la config de php.ini)...

Mes 2 fichiers sont créés sur mon serveur dans le répertoire wamp/tmp indiqué dans le php.ini
Le fichier plein contient toutes les valeurs des variables initialisées dans login.php. C'est comme si IE créait un fichier session à chaque appel à la fonction session_start(); C'est comme si la session n'était pas transmise d'une page à l'autre.
nicoaix 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 16h45.


 
 
 
 
Partenaires

Hébergement Web