Bonjour,
Je suis en train de plancher en ce moment sur le site d'une team de jeu et mon problème est le suivant:
dans ma page index.php je fais un if $_GET['nav'] si celui-ci est défini je fais des includes avec un switch.
Quand je vais donc dans nav = connexion j'ai mon formulaire et tout le patati mais là ou ça se "complique" c'est que lors ce que je me connecte (j'ai pas fait de redirection de réussite, justement pour tester) :
les variables sessions sont bien ajoutées mais dès que je change de page, **pouf** disparaissent
eeuuuuhh, un peu de code pour illustrer ^^'
Donc, quand j'envoie le formulaire j'arrive sur la page login qui vérifie pass dans bdd et tout le blabla, si juste je définie mes variables sessions et je les affiche, elles s'affichent correctement et définies avec les données de la bdd.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 if((md5($_POST['pass'])) == $res['password_membre']){// si tout est ok $_SESSION['var_authentification'] = true ; // Etat connecté $_SESSION['var_login'] = $res['pseudo_user']; // Son Login $_SESSION['var_id'] = $res['id_user']; // Son id $_SESSION['var_type_user'] = $res['id_type_membre']; echo '<br /><br />'.$_SESSION['authentification'].'<br />'.$_SESSION['login'].'<br />'.$_SESSION['id'].'<br />'.$_SESSION['type_user']; // le echo me retourne "1 le_login_user 1 1 1" (récupéré de bdd) //header('location: index.php?nav=account');// Affiche cette page en cas de reussite
Maintenant, le code de mon menu (sessions sont là pour le menu):
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 $navigation = '?navigation='; if(!isset($_SESSION['var_authentification'])){ $liens = '<tr><TD width="100px" style="border-bottom:1px solid #999999;"><a href="'.$_SERVER['PHP_SELF'].$navigation.'inscription">Inscription</a> </td></tr>'; $liens .= '<tr><TD width="100px" style="border-bottom:1px solid #999999;"><a href="'.$_SERVER['PHP_SELF'].$navigation.'connexion"><div class="deco_co">Connexion</div></a> </td></tr>'; }else{ switch ($_SESSION['var_type_user']){ case 1: $liens = '<tr><TD width="100px" style="border-bottom:1px solid #999999;"><a href="'.$_SERVER['PHP_SELF'].$navigation.'account">Mon compte</a> </td></tr>'; $liens .= '<tr><TD width="100px" style="border-bottom:1px solid #999999;"><a href="'.$_SERVER['PHP_SELF'].$navigation.'&out=1"><div class="deco_co">Déconnexion</div></a> </td></tr>'; break; } // Là j'affiche pour tester si mes variables sessions sont encore là, dans un doute et POUF, A PLUS (dès le changement de page login avant) echo '<br /><br />'.$_SESSION['authentification'].'<br />'.$_SESSION['login'].'<br />'.$_SESSION['id'].'<br />'.$_SESSION['type_user']; // le echo ne me retourne rien alors qu'il devrait le faire, comme avant...
Quelqu'un aurait-il une idée? Si je me suis mal exprimé, jveux bien apporter des explications en plus etc...
Merci.
Partager