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 -->
<?php
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";
}
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<!-- les liens -->
<?php include ("_head/link.php"); ?>
<title>Connexion</title>
</head>
<body>
<!-- L'en-tête -->
<?php 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 ="<?php if(isset($pseudo)){ echo $pseudo; } ?>" placeholder="pseudo"/>
<div class="text-red-500"> <?php 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 ="<?php if(isset($password)){ echo $password; } ?>" placeholder="Mot de passe"/>
<div class="text-red-500"> <?php 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 -->
<?php include("_footer/footer.php"); ?>
<!-- les scripts tailwinds et bootstrap -->
<?php 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" !