Créer un espace membres
- Accueil
- Forum
- Programmation
- PHP
- Créer un espace membres
cyci60 Le 25 août 2018 à 22:46 (Édité le 25 janvier 2019 à 17:54)
session_start();
try
{
$bdd = new PDO('mysql:host=127.0.0.1;dbname=test;charset=utf8', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
if(isset($_POST['formconnexion']))
{
$mailconnect = htmlspecialchars($_POST['mailconnect']);
$passconnect = htmlspecialchars($_POST['passconnect']);
$pass_hache = password_hash($_POST['passconnect'], PASSWORD_DEFAULT);
if(!empty($_POST['mailconnect']) AND !empty($_POST['passconnect']))
{
$requser = $bdd->prepare('SELECT * FROM membres WHERE email = ? AND pass = ?');
$requser->execute(array($mailconnect, $passconnect));
$userexist = $requser->rowCount();
if($userexist == 1)
{
$userinfo = $requser->fetch();
$_SESSION['id'] = $userinfo['id'];
$_SESSION['pseudo'] = $userinfo['pseudo'];
$_SESSION['email'] = $userinfo['email'];
header('Location: profil.php?id='.$_SESSION['id']);
}
else
{
$erreur = 'Mauvais mail ou mot de passe !';
}
}
else
{
$erreur = 'Tous les champs doivent être remplis !';
}
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Inscription</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" media="screen">
</head>
<body>
<div id="wrapper">
<form method="POST" action="">
<fieldset>
<legend>Connexion</legend>
<label for="email">Mail</label><br>
<input type="email" name="mailconnect" id="email" placeholder="Tapez votre mail" autofocus>
<br><br>
<div></div>
<label for="pass">Password</label><br>
<input type="password" name="passconnect" id="pass" placeholder="Tapez votre mot de passe">
<br><br>
<div></div>
<input type="reset" value="Reset" class="button">
<input type="submit" name="formconnexion" value="Se connecter !" class="button">
</fieldset>
</form>
<div style="color: #8b0000;"><?php if(isset($erreur)) { echo $erreur; } ?></div>
</div>
</body>
</html>
Bonsoir, Quand je veux connecter un membre qui est inscris dans la base de données,
on m'indique (mauvais mail ou mot de passe !). Je me suis relus & je vois pas l'erreur.
Merci de m'aider.
cyci60 Le 27 août 2018 à 19:26 (Édité le 1 janvier 1970 à 01:00)
Jctickle Le 4 septembre 2018 à 02:59 (Édité le 1 janvier 1970 à 01:00)
Pour l'identification, tu fais passer dans ta requête la variable $passconnect.
Dans ta base de donnée, les mots de passes sont en clair, c'est en md5 ou sha1 ?
Parce que ta condition dit que email doit correspondre mais aussi mot de passe... Et niveau mot de passe, exemple .. secret et e5e9fa1ba31ecd1ae84f75caaa474f3a663f05f4 ne correspondent pas vraiment et donc ... mauvais mail ou mot de passe !
J'espère que cela aura pu t'aider.. Dis-moi quoi :-)
Bien à toi.
Jean-Claude
Profil introuvable Le 5 septembre 2018 à 23:29 (Édité le 1 janvier 1970 à 01:00)