Files
cms-simplifie/README.md
2025-11-03 16:18:51 +01:00

128 lines
3.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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)**.
Lobjectif est de créer un petit site de **gestion darticles (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 ladministrateur avec un **mot de passe haché**
- **Ajout, modification et suppression** darticles
- **Affichage** des articles sur la page daccueil
- 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 avec `password_verify()`
- Le fichier **.gitignore** empêche denvoyer le fichier `.env` sur Gitea
---
## Exécution du projet en local
Étape 1 — Ouvrir le dossier du projet
Télécharger ou cloner le projet depuis Gitea :
```bash
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 dexemple.
É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 à ladresse suivante :
👉 http://localhost:8000
(ou 8080 selon le port choisi)
Étape 6 — Connexion à ladministration
Identifiants de test :
Login : admin
Mot de passe : admin123
Le mot de passe est haché dans la base de données et napparaît nulle part dans le code.