Apprenez à développer un système de login basique en PHP. Cet article guide les développeurs débutants à travers les étapes d'authentification et de gestion des sessions.

Développer un Système de Login Basique en PHP

Introduction

Dans le développement web, la création d’un système de login est une compétence essentielle, surtout pour les développeurs débutants. Cet article vous guidera à travers les étapes de la création d’un système de login basique en PHP, en abordant les concepts d’authentification et de gestion des sessions.

1. Préparer l’environnement

Avant de commencer, assurez-vous d’avoir un serveur local (comme XAMPP ou MAMP) installé sur votre machine. Créez un dossier pour votre projet et assurez-vous d’avoir PHP et MySQL configurés.

2. Créer la base de données

Pour stocker les informations d’utilisateur, vous devez créer une base de données. Voici un exemple de requête SQL pour créer une table d’utilisateurs :

CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, password VARCHAR(255) NOT NULL);

3. Formulaire de login

Créez un fichier login.php avec un formulaire HTML simple :

<form action="authenticate.php" method="POST">
<input type="text" name="username" placeholder="Nom d'utilisateur" required>
<input type="password" name="password" placeholder="Mot de passe" required>
<input type="submit" value="Se connecter">
</form>

4. Authentification des utilisateurs

Dans le fichier authenticate.php, récupérez les données du formulaire et vérifiez-les dans la base de données :

<?php
session_start();
$conn = new mysqli("localhost", "username", "password", "database_name");
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM users WHERE username='$username'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
if (password_verify($password, $row['password'])) {
$_SESSION['username'] = $username;
header("Location: dashboard.php");
} else {
echo "Mot de passe incorrect";
}
} else {
echo "Nom d'utilisateur non trouvé";
}
?>

5. Sécuriser le mot de passe

Il est crucial de ne jamais stocker les mots de passe en clair. Utilisez la fonction password_hash() lors de l’enregistrement d’un nouvel utilisateur :

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

Conclusion

Vous avez maintenant un système de login basique en PHP ! Bien que cet exemple soit simple, il constitue une base solide pour développer des systèmes d’authentification plus complexes. N’oubliez pas d’explorer des fonctionnalités supplémentaires comme la réinitialisation de mot de passe et la gestion des sessions pour renforcer la sécurité de votre application.

Laisser un commentaire