DevBlog — Votre Blog Dynamique
Le projet fil rouge de cette formation : construire un blog complet avec PHP et MySQL, incluant articles, catégories, commentaires, authentification et panel admin.
Structure du Projet DevBlog
Organisation des fichiers et base de données
text
devblog/
├── index.php — Page d'accueil (liste des articles)
├── article.php — Page détail d'un article
├── connexion.php — Page de connexion
├── inscription.php — Page d'inscription
├── admin/
│ ├── dashboard.php — Panel admin
│ ├── create-article.php — Créer un article
│ └── edit-article.php — Modifier un article
├── includes/
│ ├── config.php — Connexion PDO à MySQL
│ ├── functions.php — Fonctions utilitaires
│ ├── header.php — En-tête commun (nav)
│ └── footer.php — Pied de page commun
├── models/
│ ├── Article.php — Requêtes articles (CRUD)
│ ├── User.php — Requêtes utilisateurs
│ └── Category.php — Requêtes catégories
├── css/
│ └── style.css — Styles du blog
├── uploads/ — Images uploadées
└── sql/
└── devblog.sql — Structure de la base
BASE DE DONNÉES MySQL :
───────────────────────
users — id, username, email, password, role, created_at
articles — id, title, slug, content, image, user_id, category_id, created_at
categories — id, name, slug
comments — id, content, user_id, article_id, created_at
FONCTIONNALITÉS :
─────────────────
✓ CRUD complet (Create, Read, Update, Delete) des articles
✓ Catégories avec filtrage
✓ Commentaires sous les articles
✓ Authentification (inscription + connexion + sessions)
✓ Upload d'images de couverture
✓ Panel admin avec rôles (admin/auteur)
✓ Pagination des résultats
✓ Protection CSRF, XSS, injection SQL
✓ Architecture MVC (préparation à Laravel)PHP Backend
- ✓ Variables, fonctions, tableaux
- ✓ Formulaires (GET/POST) et validation
- ✓ Sessions, cookies, messages flash
- ✓ Inclusions et templates (layout)
MySQL & PDO
- → Création de tables et relations
- → Requêtes préparées (anti injection SQL)
- → CRUD complet avec PDO
- → Jointures SQL (INNER, LEFT JOIN)
Authentification
- → password_hash / password_verify
- → Inscription avec validation
- → Connexion avec sessions
- → Protection des pages (middleware)
Sécurité & MVC
- → Protection CSRF (tokens)
- → Protection XSS (htmlspecialchars)
- → Architecture Model-View-Controller
- → Transition vers Laravel
La Stack Technique
Backend
- PHP 8.2+ — Langage serveur
- MySQL — Base de données relationnelle
- PDO — Accès base de données sécurisé
- Apache — Serveur web (via XAMPP)
Prérequis
- HTML, CSS, JavaScript (bases)
- XAMPP installé (Apache + MySQL + PHP)
- VS Code avec les extensions PHP
- phpMyAdmin (inclus dans XAMPP)
Prêt à construire DevBlog ?
Suivez le cours étape par étape pour créer votre blog dynamique avec PHP et MySQL
Commencer le Chapitre 0