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
?>