variable globale sous IE et FF

Répondre
croco
le 17/07/2007 à 15:45
croco
Bonjour,

Voici mon problème : la gestion de session utilisateur fonctionne sous FireFox mais pas sous IE(6 sp2).

Dans un fichier "login-verif.php servant à vérifier login et mot de passe saisis dans un formulaire d'identification, on teste la validité de ces éléments et si c'est bon la variable globale $S_SESSION['sessionlogin'] est initialisée.
Plus loins j'ai le code suivant :

<?php 
header("Location: SiteFR.php?page=login-okFR");
exit;
?>


"SiteFR.php" est le fichier structurant du site, avec CSS et include des différents éléments.
Dans ce cas, c'est le corps de page "login-okFR.php" qui est en "include". Ce corps de page contient juste l'information que le visiteur est bien connecté :

<?php 
echo "Connexion établie en tant que \"".$_SESSION['sessionlogin']."\"\n";
?>


$_SESSION['sessionlogin'] est bien sûr utilisée pour gérer l'accès à certaines rubriques et données.
Ceci fonctionne sous FireFox mais pas sous IE.
J'ai placé des echo sur la valeur de $_SESSION['sessionlogin'] à différents endroits. La valeur est toujours celle attendue avec FF, mais avec IE la valeur est bonne juste avant : header("Location: SiteFR.php?page=login-okFR"); , mais la variable est vide une fois SiteFR.php chargée (session_start(); étant en début de SiteFR.php).

J'ai testé sur 2 PC différents avec le même résultat.

Quelqu'un peut-il m'expliquer ce qui se passe ? Je suppose que s'il y avait une grossière erreur dans le code la variable globale serait perdue aussi avec FireFox.
moogli
le 17/07/2007 à 17:10
moogli
salut,

php n'y ai pour rien puisse qu'il n'agit pas sur le navigateur !

par contre je pense que ton IE bloque les cookie se qui fait que ton code ne fonctionne plus ! si c'est le cas, passe l'identifiant de session (SID) par l'url !

@+
Il en faut peu pour être heureux !!!!!
croco
le 17/07/2007 à 18:04
croco
php n'y ai pour rien ...

Certes, j'ai choisi de poster ce sujet dans la rubrique PHP parce que j'ai constaté la perte d'une valeur d'une variable gloable.

passe l'identifiant de session (SID) par l'url

Pourquoi pas, mais l'avantage d'une variable globale c'est d'être globale... et de ne pas avoir à être passée d'une page à l'autre par l'url.

En fait si depuis la page d'index depuis laquelle on clique sur un lien pour entrer dans le site proprement dit je définis href sur le chemin relatif (/chemin) ou l'url hébergeur (de type moncompte.herbergeur.fr/chemin) ce problème ne se produit pas, par contre si je définis href sur l'url de mon domaine (www.mondomaine.fr/chemin) le problème apparait. Avec donc le même paramétrage IE sur les cookies.

Je suis bien d'accord, le code php n'a rien à voir avec le navigateur, c'est bien pourquoi le constat de ce phénomène m'intrigue.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours