
le 25/06/2005 à 17:16
probleme de session
yop tlm,
Donc voila j'ai commencé a m'initier au session. j'ai crée 4 fichier .php
index.php
verif.php
index_membre.php
logout.php
Lorsque j'entre le login et le mot de passe il y a une redirection vers la page index_membre avec un message de bienvenue plus le login de l'utilisateur. Seulement j'ai une erreur, il me dit que la variable est indéfinie. Je ne comprend pas car j'ai démarrer la session pour chacune des page, donc il devrait reconnaitre cette variable.
Voici mon code:
index.php
verif.php
index_membre.php:
logout.php:
Donc voila j'ai commencé a m'initier au session. j'ai crée 4 fichier .php
index.php
verif.php
index_membre.php
logout.php
Lorsque j'entre le login et le mot de passe il y a une redirection vers la page index_membre avec un message de bienvenue plus le login de l'utilisateur. Seulement j'ai une erreur, il me dit que la variable est indéfinie. Je ne comprend pas car j'ai démarrer la session pour chacune des page, donc il devrait reconnaitre cette variable.
Voici mon code:
index.php
- <?session_start(); // On démarre la session?>
- <html>
- <head>
- <title>page de connexion</title>
- </head>
- <body>
- <form method="post" action="verif.php">
- <table border="0" width="372" align="center"><tr><td width="192"><b>Votre login :</b></td>
- <td width="170"><input type="text" name="login"></td></tr><tr><td width="192"><b>Votre mot de passe :</b></td>
- <td width="170"><input type="password" name="password"></td></tr><tr><td colspan="2" width="366">
- <input type="submit" name="submit" value="Entrer !!">
- </td></tr></table></form>
- </body>
- </html>
verif.php
- <?
- $login_sql ="tonwebmaster"; // On défini le login (pour l'exemple) que l'on a récupéré par exemple de mysql ou autre ...
- $password_sql ="monpass"; // On défini le mot de passe pour l'exemple
- //$login=$_POST['login'];
- //$password=$_POST['password'];
- if ($_POST['login']=="$login_sql" && $_POST['password']=="$password_sql"){ // On compare la valeur tapée par l'utilisateur ($login) avec celle enregistrée ($login_sql)
- session_start(); // On démarre la session
- session_register("login"); // On enregistre le login (attention, les variables de session n'ont pas de signe dollar $)
- session_register("password"); // On enregistre le mot de passe
- header("location: index_membre.php"); // Ensuite on redirige la page actuelle vers l'espace membre
- }
- else{echo "Erreur d'identification, veuillez entrez un login et un mot de passe valide !";} // Sinon l'identification n'est pas réussite
- ?>
index_membre.php:
- <?
- session_start(); // on démarre la session
- if (!session_is_registered("password")){ // On vérifie si la session est bien crée
- echo "Erreur : vous devez vous identifiez pour avoir accès à cette espace !"; // Message d'erreur
- exit(); // On arrêtte l'exécution du script (donc tout ce qui est en dessous ne sera pas affiché)
- }
- // Contenu de votre espace membre : ---------------------------------------------------------------------------------------------
- echo "Bienvenue".$login."sur l'espace membre !"; // Message de bienvenue
- echo "<a href=logout.php>Vous déconnectez ?!</a><br>"; // Lien permettant la déconnexion
- ?>
logout.php:
- <?
- session_start(); // on démarre la session
- session_unset(); // On efface toutes les variables de la session
- session_destroy(); // Puis on détruit la session
- header("location: index.php") ; // On renvoie ensuite sur la page d'identification
- ?>