PHP session, accès par mot de passe

Fermé
nicos3 - 7 févr. 2011 à 18:43
 Utilisateur anonyme - 7 févr. 2011 à 22:01
Bonsoir,

Je suis entrain de travailler sur un site perso contenant du PHP (débutant) en y ajoutant un accès accessible uniquement par mot de passe.
J'ai donc une page connexion.php sur laquelle l'utilisateur entre un mot de passe (le même pour tout le monde, pas de BDD).

J'aimerais gérer deux cas :
- Si le mot de passe entré est "mdp01", rediriger l'utilisateur vers membres.php
- Si le mot de passe entré est "mdp02", rediriger l'utilisateur vers admin.php
Jusqu'ici tout va bien...

Mes pages gardent en session le mot de passe renseigné, ainsi si l'utilisateur a tapé "mdp01" et qu'il change de page, puis retourne sur la page de connexion, il sera redirigé automatiquement vers la page membres.php
Cependant, (et c'est maintenant le problème) si l'utilisateur a tapé "mdp2" et qu'il change de page, puis retourne sur la page de connexion, il est EGALEMENT redirigé vers membres.php et non admin.php

Voici les codes correspondant à ma tentative infructueuse :

Page connexion.php :
<?php
session_start();
if(isset($_POST['bt_connexion']))
{
	if($_POST['password']=='mdp01')
	{
		$_SESSION['password']='mdp01';
		header("Location:membres.php");
	}
	else if($_POST['password']=='mdp02')
	{
		$_SESSION['password']='mdp02';
		header("Location:admin.php");
	}
	else
	{
		$erreur = 'Le mot de passe est incorrect, veuillez recommencer.';
	}
}
?>


Page membres.php :
<?php
session_start();
if(!isset($_SESSION['password']))
{
	header("Location:connexion.php");
}
if($_SESSION['password'] != 'mdp01')
{
	header("Location:connexion.php");
}
?>


Page admin.php :
<?php
session_start();
if(!isset($_SESSION['password']))
{
	header("Location:connexion.php");
}
if($_SESSION['password'] != 'mdp02')
{
	header("Location:connexion.php");
}
?>


Merci d'avance de votre précieuse aide et bonne continuation :)
Nicolas

A voir également:

1 réponse

Utilisateur anonyme
7 févr. 2011 à 22:01
salut,

remplace tes codes par ceux la et dit moi si ca marche:


page membres:

<?php
session_start();
if(!isset($_SESSION['password']) && $_SESSION['password'] != 'mdp01')
{
header("Location:connexion.php");
}
?>

page admin :

<?php
session_start();
if(!isset($_SESSION['password']) && $_SESSION['password'] != 'mdp02')
{
header("Location:connexion.php");
}
?>

P.S: si jamais ca marche pas donne moi le lien de ton site en PM si tu veux
0