Voilà le code que j'ai de mon côté, légèrement modifié afin de débugger un peu :
<?php
if (isset($_POST['mot_de_passe']) && isset($_POST['nom']) && isset($_POST['prenom']) ) // Si la variable existe
{
// On se crée une variable $mot_de_passe avec le mot de passe entré et$ non et $prenom
$mot_de_passe = $_POST['mot_de_passe'];
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
}
else // La variable n'existe pas encore
{
$mot_de_passe = ""; // On crée une variable $mot_de_passe vide
$prenom ="" ;
$nom = "";
}
echo "pass : $mot_de_passe, nom: $nom, prenom: $prenom<br />";
mysql_connect("localhost", "root", "");
mysql_select_db("tests")or die(mysql_error());
$requete = "SELECT password FROM visiteurs WHERE nom='".$nom."' AND prenom='".$prenom."'";
echo "$requete<br />";
$reponse=mysql_query($requete);
$donnees = mysql_fetch_array($reponse);
print_r($donnes);echo "<br />";
if(isset($donnees['password']) && ($donnees['password'] == $mot_de_passe))
{
// On affiche la page cachée.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>page cachee :</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form action="titre.php" method="post">
<p>
<fieldset>
<legend><strong> voila la page cachee </strong> :</legend>
</fieldset>
<input type="submit" value="Valider" /> <br />
</p>
</form>
</body>
</html>
<?php
}
else // le mot de passe n'est pas bon
{
// On affiche la zone de texte pour rentrer le mot de passe.
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Page protégée par mot de passe</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p>Veuillez entrer vos cordonnes pour acceder a la page cachee :</p>
<fieldset>
<legend><strong>Vos coordonnées:</strong></legend>
<form action="protection.php" method="post">
<p>
<label for="prenom"><strong>votre prenom</strong></label> :<br /> <input type="text" name="prenom" id="prenom" />
</p>
<p>
<label for="nom"><strong>Votre nom</strong></label>:<br /> <input type="text" name="nom" id="nom" />
</p>
<p>
<label for="password"><strong>Votre mot de passe</strong></label> :<br /> <input type="password" name="mot_de_passe" id="pseudo" />
</p>
</fieldset>
<p>
<input type="submit" value="Valider" /> <input type="reset" />
</p>
</form>
</body>
</html>
<?php
} // Fin du else
mysql_close();
// Fin du code :)
?>
Ce code marche, je l'ai testé. Quand tu arrives la première fois sur la page ou que tu rentres de mauvais identifiant, il t'affiche le formulaire pour se logger. Quand tu rentres les bons identifiants, tu accèdes à la page cachée...
--
Au commencement, nous sommes tous des noobs...


