Ce site utilise des cookies pour améliorer uniquement votre expérience utilisateur.
Vous pouvez lire à tout moment comment nous utilisons les cookies sur le site.
bonjour, je suis actuellement la formation creer son site de A a Z v2 et lors de la creation de la page de connexion je rencontre un probleme !
celui-ci etant que ma base de données est bien reliee au site et lors de l'inscription tout se passe bien mais alors que je recopie le code mot a mot la connexion ne veut pas se faire ... ci joint le code de la page si quelqu'un a une idée ! merci 😀
<!-- connexion bade de donnees --> | |
require_once ('include.php'); | |
//$db = new PDO('mysql:host=localhost;dbname=bddcryptosvrai', 'root', ''); | |
if(isset($_SESSION['id'])){ | |
header('Location: /'); | |
exit; | |
} | |
if(!empty($_POST)){ | |
extract($_POST); | |
$valid = true; | |
if(isset($_POST['connexion'])){ | |
$pseudo = ucfirst(trim($pseudo)); | |
$password = trim($password); | |
if(empty($pseudo)){ | |
$valid = false; | |
$err_pseudo = "Ce champ ne peut pas être vide"; | |
} | |
if(empty($password)){ | |
$valid = false; | |
$err_password = "Ce champ ne peut pas être vide"; | |
} | |
if($valid){ | |
$req = $DB->prepare("SELECT mdp | |
FROM utilisateur | |
WHERE pseudo = ?"); | |
$req->execute(array($pseudo)); | |
$req = $req->fetch(); | |
if(isset($req['mdp'])){ | |
if(!password_verify($password, $req['mdp'])) { | |
$valid = false; | |
$err_pseudo = "La combinaison du pseudo / mot de passe est incorrecte"; | |
} | |
}else{ | |
$valid = false; | |
$err_pseudo = "La combinaison du pseudo / mot de passe est incorrecte"; | |
} | |
} | |
if($valid){ | |
$req = $DB->prepare("SELECT * | |
FROM utilisateur | |
WHERE pseudo = ?"); | |
$req->execute(array($pseudo)); | |
$req_user = $req->fetch(); | |
if(isset($req_user['id'])){ | |
$date_connexion = date('Y-m-d H:i:s'); | |
$req = $DB->prepare("UPDATE utilisateur SET date_connexion = ? WHERE id = ?"); | |
$req->execute(array($date_connexion, $req_user['id'])); | |
$_SESSION['id'] = $req_user['id']; | |
$_SESSION['pseudo'] = $req_user['pseudo']; | |
$_SESSION['mail'] = $req_user['mail']; | |
$_SESSION['role'] = $req_user['role']; | |
header('Location: /'); | |
exit; | |
}else{ | |
$valid = false; | |
$err_pseudo = "La combinaison du pseudo / mot de passe est incorrecte"; | |
} | |
} | |
} | |
} | |
<html> | |
<head> | |
<!-- les liens --> | |
include ("_head/link.php"); | |
<title>Connexion</title> | |
</head> | |
<body> | |
<!-- L'en-tête --> | |
include("_header/header.php"); | |
<!-- Formulaire de connexion --> | |
<p class="text-5xl text-center pt-10">Connexion</p> | |
<div class="container pt-10 pb-96"> | |
<div class="row"> | |
<div class="col-3"></div> | |
<div class="col-6"> | |
<form method ="post"> | |
<div class="mb-3"> | |
<label class="form-label">Pseudo :</label> | |
<input class="form-control" type="text" name="pseudo" value ="if(isset($pseudo)){ echo $pseudo; } " placeholder="pseudo"/> | |
<div class="text-red-500"> if(isset($err_pseudo)){ echo $err_pseudo;} </div> | |
</div> | |
<div class="mb-3"> | |
<label class="form-label">Mot de passe:</label> | |
<input class="form-control" type="password" name="password" value ="if(isset($password)){ echo $password; } " placeholder="Mot de passe"/> | |
<div class="text-red-500"> if(isset($err_password)){ echo $err_password;} </div> | |
</div> | |
<div class="mb-3"> | |
<button type="submit" name="connexion " class="btn btn-outline-primary">Se connecter</button> | |
</div> | |
</form> | |
</div> | |
</div> | |
</div> | |
<!-- Le pied de page --> | |
include("_footer/footer.php"); | |
<!-- les scripts tailwinds et bootstrap --> | |
include("_head/script.php") ; | |
</body> | |
</html> | |
Pour ceux qui aurait le meme probleme j ai trouve une solution en mettant en commantaire/supprimant les lignes 17,18 et 19 avec le crochet joint a la fin bien evidemment ! ca m'empechait la connexion !
Pour ceux qui aurait le meme probleme j ai trouve une solution en mettant en commantaire/supprimant les lignes 17,18 et 19 avec le crochet joint a la fin bien evidemment ! ca m'empechait la connexion !
Je rajoute que je n'ai meme pas les messages d'erreurs "ce champs ne peut pas etre vide" !