DEV Community

sabriiine15
sabriiine15

Posted on

Créer un système d’authentification avec PHP et MySQL (étape par étape)

Introduction:
Dans ce tutoriel, je vais expliquer comment j’ai créé un système simple d’authentification en utilisant PHP, MySQL, HTML et CSS. Ce projet permet aux utilisateurs de s’inscrire, se connecter et accéder à un tableau de bord protégé.

Technologies utilisées:
.PHP
.MySQL
.HTML
.CSS
.phpMyAdmin

**Étape 1 : Création de la base de données:
On commence par créer la base de données et la table users:

CREATE DATABASE hajar_db;
USE hajar_db;

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    nom VARCHAR(50),
    prenom VARCHAR(50),
    email VARCHAR(100),
    password VARCHAR(255)
);
Enter fullscreen mode Exit fullscreen mode

**Étape 2 : Inscription (inscri.php):
Le formulaire d’inscription permet à l’utilisateur de créer un compte en saisissant :
.Nom
.Prénom
.Email
.Mot de passe

Traitement :
.Vérification des champs
.Sécurisation des données avec htmlspecialchars()
.Cryptage du mot de passe avec sha1()
.Vérification si l’email existe déjà
.Insertion dans la base de données

**Étape 3 : Connexion (login.php):
Le système de login :
Vérifie l’email et le mot de passe
Utilise PDO pour la connexion à la base de données
Compare les données avec la table users

Si les informations sont correctes :

$_SESSION['id'] = $user['id'];
$_SESSION['email'] = $user['email'];

header("Location: site.php");
Enter fullscreen mode Exit fullscreen mode

Cela permet de créer une session utilisateur.

**Étape 4 : Tableau de bord (site.php):
Après la connexion, l’utilisateur est redirigé vers un dashboard contenant :
Un message de bienvenue Des statistiques fictives Un bouton de déconnexion.

**Étape 5 : Déconnexion (logout.php) :
Le logout est très simple :

session_start();
session_unset();
session_destroy();

header("Location: login.php");
exit();
Enter fullscreen mode Exit fullscreen mode

Cela supprime la session et déconnecte l’utilisateur.

**Étape 6 : Interface utilisateur :
Le design a été réalisé avec CSS :
.Interface moderne
.Dégradés et animations
.Formulaires responsives

Ce que j’ai appris :
.Connexion PHP/MySQL
.Gestion des sessions
.Sécurisation basique des données
.Structure d’un projet web complet

Conclusion :
Ce projet m’a permis de comprendre le fonctionnement d’un système d’authentification complet avec PHP et MySQL, de l’inscription jusqu’à la déconnexion.

🔗 Code source sur GitHub : https://github.com/sabriiine15/authentication-system-php

Top comments (0)