On effet mon problème est simple je veux qu'un utilisateur entre une clés si c'est la bonne alors le mot de passe change dans la base de données et si c'est une mauvaise clés on lui indique un msg d'erreur.Tous fonctionne seulement si je met une clés au hasard rien ne se passe et il n'affiche pas le message d'erreur voulu. Donc voila mon code :
<?php
if (isset($_POST['envoyer'])&&(!empty($_POST['cles'])))
{
$cl='';
$cl=$_POST['cles'];
$sql="SELECT cles FROM users";
$req=mysql_query($sql) or exit('Erreur SQL ligne '.__LINE__.' : '.mysql_error());
$ligne=mysql_fetch_array($req);
$nb=$ligne['cles'];
if ($_POST['cles']=['cles'])
{
//Génération d'une chaine aléatoire
function chaine_aleatoire($nb_car, $chaine = 'azertyuiopqsdfghjklmwxcvbn123456789')
{
$nb_lettres = strlen($chaine) - 1;
$generation = '';
for($i=0; $i < $nb_car; $i++)
{
$pos = mt_rand(0, $nb_lettres);
$car = $chaine[$pos];
$generation .= $car;
}
return $generation;
}
$x=chaine_aleatoire(8);
// mise à jour du mot de passe
$sq="UPDATE users
SET mdp='$x'
WHERE cles='$cl'";
$rs=mysql_query($sq) or exit('Erreur SQL ligne '.__LINE__.' : '.mysql_error());
}
else {echo ('insérez une clés valide ');}
}
?>
Merci d'avance pour votre aide