Problème de login
Posté : 17 févr. 2021, 23:46
Bonjour,
J'ai un souci de login que je ne comprends pas.
il m'est impossible de me loguer dans ma base de données. le fichier register fonctionne
mais dès que je veux me loguer ça bloque.
Est-ce que quelqu'un peut m'aider svp?
voici mon code
config.php
D'avance je vous remercie tous
J'ai un souci de login que je ne comprends pas.
il m'est impossible de me loguer dans ma base de données. le fichier register fonctionne
mais dès que je veux me loguer ça bloque.
Est-ce que quelqu'un peut m'aider svp?
voici mon code
config.php
<?php
// Informations d'identification
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'sosh24');
// Connexion à la base de données MySQL
$conn = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// Vérifier la connexion
if($conn === false){
die("ERREUR : Impossible de se connecter base de données. " . mysqli_connect_error());
}
?>
register .php<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="CSS/style3.css" />
</head>
<body>
<?php
require('config.php');
if (isset($_REQUEST['username'], $_REQUEST['email'], $_REQUEST['password'])){
// récupérer le nom d'utilisateur et supprimer les antislashes ajoutés par le formulaire
$username = stripslashes($_REQUEST['username']);
$username = mysqli_real_escape_string($conn, $username);
// récupérer l'email et supprimer les antislashes ajoutés par le formulaire
$email = stripslashes($_REQUEST['email']);
$email = mysqli_real_escape_string($conn, $email);
// récupérer le mot de passe et supprimer les antislashes ajoutés par le formulaire
$password = stripslashes($_REQUEST['password']);
$password = mysqli_real_escape_string($conn, $password);
$query = "INSERT into users (username, email, type, password)
VALUES ('$username', '$email', 'user', '".hash('sha256',$password)."')";
$res = mysqli_query($conn, $query);
if($res){
echo "<div class='sucess'>
<h3>Vous êtes inscrit avec succès.</h3>
<p>Cliquez ici pour vous <a href='login.php'>connecter</a></p>
</div>";
}
}else{
?>
<form class="box" action="" method="post">
<h1 class="box-logo box-title">SOS-H24.be</h1>
<h1 class="box-title">S'inscrire</h1>
<input type="text" class="box-input" name="username" placeholder="Nom d'utilisateur" required />
<input type="text" class="box-input" name="email" placeholder="Email" required />
<input type="password" class="box-input" name="password" placeholder="Mot de passe" required />
<input type="submit" name="submit" value="S'inscrire" class="box-button" />
<p class="box-register">Déjà inscrit? <a href="login.php">Connectez-vous ici</a></p>
</form>
<?php } ?>
<img class="displayed" src="Images/Logo%20foot.png" alt="sos-h24" class="img-fluid">
</body>
</html>
login.php<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="CSS/style3.css" />
</head>
<body>
<?php
require('config.php');
if (isset($_POST['username'])){
$username = stripslashes($_REQUEST['username']);
$username = mysqli_real_escape_string($conn, $username);
$_SESSION['username'] = $username;
$password = hash('sha256',$_REQUEST['password']);
$password = mysqli_real_escape_string($conn, $password);
$query = "SELECT * FROM users WHERE username='$username' and password='$password'";
$result = mysqli_query($conn,$query) or die(mysql_error());
if (mysqli_num_rows($result) == 1) {
$user = mysqli_fetch_assoc($result);
// vérifier si l'utilisateur est un administrateur ou un utilisateur
if ($user['type'] == 'admin') {
header('location: admin/home.php');
}else{
header('location: index.php');
}
}else{
$message = "Le nom d'utilisateur ou le mot de passe est incorrect.";
}
}
?>
<form class="box" action="" method="post" name="login">
<h1 class="box-logo box-title">SOS-H24.be</h1>
<h1 class="box-title">Connexion</h1>
<input type="text" class="box-input" name="username" placeholder="Nom d'utilisateur">
<input type="password" class="box-input" name="password" placeholder="Mot de passe">
<input type="submit" value="Connexion " name="submit" class="box-button">
<p class="box-register">Vous êtes nouveau ici? <a href="register.php">S'inscrire</a></p>
<?php if (! empty($message)) { ?>
<p class="errorMessage"><?php echo $message; ?></p>
</form>
<?php } ?>
</body>
</html>
index.php<?php
// Initialiser la session
session_start();
// Vérifiez si l'utilisateur est connecté, sinon redirigez-le vers la page de connexion
if(!isset($_SESSION["username"])){
header("Location: login.php");
exit();
}
?>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div class="sucess">
<h1>Bienvenue <?php echo $_SESSION['username']; ?>!</h1>
<p>C'est votre espace utilisateur.</p>
<a href="logout.php">Déconnexion</a>
</div>
</body>
</html>
D'avance je vous remercie tous