traitement connexion à ameliorer
bonjour ,
Je viens de faire ma page de traitement de connexion et j'aimerais que vous m'aidiez à l'ameliorer en me disant ce que je pourrai changer ou ce qui ne va pas . Aussi comment puis je faire pour qu'a chaque erreur commise dans le formulaire de connexion , l'erreur (type mot de passe ou pseudo incorrect) s'affiche directement sur la meme page et non sur une nouvelle. J'espere avoir ete assez explicit. Merci !
Voici le traitementconnexion.php:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| <?php
if(!empty($_POST['pseudo']) && !empty($_POST['password']){ //si quelque chose a été tapée
require('ConnexionBDD.php');
$connexion=connexion(); //on se connecte a la BDD
$login=trim( htmlspecialchars( mysqli_real_escape_string($connexion ,$_POST['login']);//sécurité sur ce qui a pu etre envoye
$password=trim( htmlspecialchars( mysqli_real_escape_string($connexion ,$_POST['password']);
$req="select pseudo,mdp from users where pseudo='".$_POST['pseudo']."'" ; // si le pseudo existe dans la BDD
$res=mysqli_query($connexion,$req)or die(mysqli_error($connexion)); //recupere les resulatts correspondants
$ligne=mysqli_fetch_assoc($res); //les affiche
if($ligne==''){ // si l'identifiant n'existe pas (resultat nul)
echo "<p>Mot de passe ou pseudo erronée, veuillez réessayer</p>";
}else{
if(password_verify($_POST['password'],$ligne['mdp'])){ //on verifie le mot de passe
session_start(); // verifiés ! on ouvre la session
$_SESSION['pseudo']=$_POST['pseudo'];
header('Location: acceuil.php');
exit();
}else{ //Si le mot de passe ne correspond pas
echo"<p>Mot de passe ou pseudo erronée, veuillez réessayer </p>";
}
}
}
?> |
Ainsi que son formulaire :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| <!DOCTYPE html >
<html>
<head>
<title> Connexion à MarketIn </title>
<meta charset="utf-8">
<link rel = "stylesheet" href="css/styletp.css" />
</head>
<body onload="document.getElementById('login').focus()">
<header>
<h1> Connectez-vous </h1>
</header>
<form method="POST" action="TraitementConnexion.php">
<table border="1">
<tr>
<th> <label for="pseudo"> Nom d'utilisateur: </label> </th>
<td> <input id="pseudo" type="text" name="pseudo" required/></td>
</tr>
<tr>
<th> <label for="password"> Mot de passe : </label> </th>
<td> <input id="password" type="password" name="password" required/> </td>
</tr>
</table>
<br>
<input type="submit" value="connexion " class="bouton"/>
</form>
<br>
<div id="PasEncoreInscrit" >
<p> Nouveau sur Marketln ? <br>
<a href="Inscription.php" > Inscrivez-vous ! </a>
</p>
</div>
<?php include("footer.php");?>
</body>
</html> |