README – CMS Simplifié
Présentation
Ce mini-projet a été réalisé dans le cadre du module Développement Web (BTS CIEL – 2ᵉ année).
L’objectif est de créer un petit site de gestion d’articles (mini CMS).
Un administrateur peut se connecter, ajouter, modifier ou supprimer des articles.
Les données sont stockées dans une base MySQL.
Technologies utilisées
| Technologie | Utilisation |
|---|---|
| HTML | Structure des pages |
| CSS / Bootstrap 5 | Mise en forme et design (thème noir et or) |
| PHP (PDO) | Connexion à la base de données et gestion des pages dynamiques |
| MySQL | Stockage des utilisateurs et des articles |
| Git / Gitea | Sauvegarde du projet |
Structure du projet
cms-simplifie/ │ ├── public/ │ ├── assets/ │ │ └── style.css │ ├── add.php │ ├── edit.php │ ├── delete.php │ ├── admin.php │ ├── login.php │ ├── logout.php │ ├── article.php │ └── index.php │ ├── inc/ │ └── db.php │ ├── cms_simplifie.sql ← Base de données exportée ├── .env.example ← Exemple de configuration ├── .gitignore ← Exclut les fichiers sensibles (.env) └── README.md
Fonctionnalités principales
- Connexion de l’administrateur avec un mot de passe haché
- Ajout, modification et suppression d’articles
- Affichage des articles sur la page d’accueil
- Thème sombre avec couleurs noir et or
- Aucune donnée sensible visible sur Gitea
Sécurité
- Les identifiants MySQL sont stockés dans un fichier .env (non visible sur Gitea)
- Connexion sécurisée avec PDO et requêtes préparées
- Mots de passe stockés avec
password_hash()et vérifiés avecpassword_verify() - Le fichier .gitignore empêche d’envoyer le fichier
.envsur Gitea
Exécution du projet en local
Étape 1 — Ouvrir le dossier du projet
Télécharger ou cloner le projet depuis Gitea :
git clone https://gitea.lasallesaintdenis.com/safouane.bazzi/cms-simplifie.git
Puis ouvrir le dossier cms-simplifie dans VS Code ou un autre éditeur.
Étape 2 — Préparer le fichier .env
Copier le fichier .env.example
Le coller à la racine du projet
Le renommer en .env
Modifier les informations selon la configuration MySQL locale :
DB_HOST=127.0.0.1
DB_NAME=cms_simplifie
DB_USER=root
DB_PASS=ton_mot_de_passe
Étape 3 — Créer la base de données MySQL
Ouvrir DBeaver (ou phpMyAdmin)
Créer une nouvelle base de données appelée cms_simplifie
Importer le fichier cms_simplifie.sql (fourni avec le projet)
Ce fichier contient les tables articles et utilisateur, avec des données d’exemple.
Étape 4 — Lancer le serveur PHP
Dans le terminal (dans le dossier du projet) :
php -S localhost:8000 -t public
Si le port 8000 est déjà utilisé :
php -S localhost:8080 -t public
Étape 5 — Ouvrir le site dans un navigateur
Accéder à l’adresse suivante :
👉 http://localhost:8000
(ou 8080 selon le port choisi)
Étape 6 — Connexion à l’administration
Identifiants de test :
Login : admin
Mot de passe : admin123
Le mot de passe est haché dans la base de données et n’apparaît nulle part dans le code.