Bonjour,
Je viens de me rendre compte d'un problème extra-ordinaire :
A l'identification du membre, je récupère son pseudo depuis ses informations de connexion (mail et passe), au moyen d'une requête sql.
Je passe donc le pseudo en session, comme suit :
Juste en dessous dans le script, j'ai une ligne qui affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $affiche="SELECT pseudo FROM membre WHERE email='".$email."' AND motDePasse='".$passe."' AND valide='1' "; $resultat = mysql_query("$affiche"); while ( $R = mysql_fetch_array($resultat)) { $_SESSION['pseudo']=$R[pseudo]; ;} mysql_free_result($resultat);
Jusque là tout va bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 echo "Bienvenue $_SESSION[pseudo]";
Mais si je quitte la page et que j'y reviens, la variable $_SESSION['pseudo'] a disparu.
Pourtant après avoir créer cette variable, j'en crée d'autres et elles elles sont toujours disponible dans le reste du site, y compris dans la page en question.
Comment cela ce puisse-t'il être ?
ça c'est le script complet (épuré quand même), si vous êtes patient :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 if(!isset($_SESSION['pseudo'])) {Colorez votre code PHP sur les forums grâce à Developpez.com?><?php //on va aller chercher dans la table le pseudo pour les placer en session et l'urlSite pour l'insérer directement dans la table commentaire ou réponse $affiche="SELECT id, pseudo FROM membre WHERE email='".$email."' AND motDePasse='".$passe."' "; $resultat = mysql_query("$affiche"); while ( $R = mysql_fetch_array($resultat)) { $_SESSION['pseudo']=$R[pseudo]; //id sert à savoir où updater le numéro de membre provisoirement créé ci-dessous, pour le temps de la session ($numeroConnexion) $id=$R[id] ;} mysql_free_result($resultat); //ici ce sont des variables qui font offices d'id de session : elles sont bien transmises partout. $_SESSION['numeroConnexion']=$numeroConnexion; $_SESSION['numeroConnexionVariable']=$numeroConnexionVariable; ;}//ferme if(!isset($_SESSION[id]) echo "Bienvenue $_SESSION[pseudo]"; ?>
Partager