|
|
|
|
Bonjour à tous !!
Je suis en train de faire une partie sécurisé sur mon site, avec pseudo et mot de passe. Et je voudrais, lorsque le mot de passe n'est bon, qu'il m'affiche un message d'erreur.
Donc voici ma partie formulaire :
<?php
if($connect == false)
{
if ( isset($POST_['err']) )
{echo ('Erreur de mot de passe !');}
else {echo ('err nExiste pas');}
?>
<form method="post" action="config/connect.php">
<p>
<label for="pseudo">Pseudo: </label>
<input id="pseudo" name="pseudo" type="text"/>
</p>
<p>
<label for="password">Mot de passe : </label>
<input id="password" name="password" type="password"/>
</p>
<input type="submit" value="Se connecter"/>
<p>
Mot de passe oublié ? Pas encore inscrit ?
</p>
</form>
<?php
}// Fin de if($connect == false)
else if ($connect == true)
{
if ($nivo==1)
{
echo("<p>Vous êtes connecté en tant que membre.</p>");
} // Fin de if($nivo==1)
else if ($nivo==2)
{
echo("<p>Vous êtes connecté en tant qu'administrateur.</p>");
} // Fin de if($nivo==2)
} // Fin de if($connect == true)
?>
<?php
include('config.php');
if(isset($_SESSION['id'])){
header("Location: ../index.php");
exit;
}
$connect = false;
if((isset($_POST['pseudo'])) && (isset($_POST['password']))){
extract($_POST);
$password = prot($password);
$pseudo = mysql_real_escape_string(htmlentities($pseudo, ENT_QUOTES));
$sql = "SELECT * FROM membres WHERE pseudo='".$pseudo."'";
$req = mysql_query($sql) or die ('Erreur SQL');
if(mysql_num_rows($req) > 0){
$rep = mysql_fetch_array($req);
if($rep['password'] == $password){
$connect = true;
$_SESSION['id_membre'] = $rep['id_membre'];
}
}
}
if($connect == true){
header("Location: ../index.php");
exit;
}elseif($connect == false){
header("Location: ../index.php?page=connexion&?err=mdp");
exit;
}
?>
Configuration: Windows XP Firefox 3.0.13
En fait tu as plusieurs erreurs:
}elseif($connect == false){
header("Location: ../index.php?page=connexion&err=mdp");
exit;
.......
et dans ta page index si tu passes l'erreur par l'URL c'est en GET qu'il faut la récupérer donc: if ( isset($POST_['err']) ) {echo ('Erreur de mot de passe !');} =>> if ( isset($_GET['err']) && $_GET['err']=='mdp')
{echo ('Erreur de mot de passe !');}
......
ensuite tu testes la variable if($connect == false) variable que tu initialise et modifies dans l'autre page ?? |