Mise à jour du README complet
This commit is contained in:
121
README.md
121
README.md
@@ -1,20 +1,27 @@
|
|||||||
README – CMS Simplifié
|
# 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).
|
## 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).
|
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.
|
Un administrateur peut se connecter, ajouter, modifier ou supprimer des articles.
|
||||||
Les données sont stockées dans une base MySQL.
|
Les données sont stockées dans une base **MySQL**.
|
||||||
|
|
||||||
Technologies utilisées
|
---
|
||||||
Technologie Utilisation
|
|
||||||
HTML Structure des pages
|
## Technologies utilisées
|
||||||
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
|
| Technologie | Utilisation |
|
||||||
MySQL Stockage des utilisateurs et des articles
|
|--------------|-------------|
|
||||||
Git / Gitea Sauvegarde du projet
|
| **HTML** | Structure des pages |
|
||||||
Structure du projet
|
| **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/
|
cms-simplifie/
|
||||||
│
|
│
|
||||||
├── public/
|
├── public/
|
||||||
@@ -32,48 +39,90 @@ cms-simplifie/
|
|||||||
├── inc/
|
├── inc/
|
||||||
│ └── db.php
|
│ └── db.php
|
||||||
│
|
│
|
||||||
├── .env.example
|
├── cms_simplifie.sql ← Base de données exportée
|
||||||
├── .gitignore
|
├── .env.example ← Exemple de configuration
|
||||||
|
├── .gitignore ← Exclut les fichiers sensibles (.env)
|
||||||
└── README.md
|
└── README.md
|
||||||
|
|
||||||
Fonctionnalités principales
|
---
|
||||||
|
|
||||||
Connexion de l’administrateur avec un mot de passe haché
|
## Fonctionnalités principales
|
||||||
|
|
||||||
Ajout, modification et suppression d’articles
|
- 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
|
||||||
|
|
||||||
Liste des articles sur la page d’accueil
|
---
|
||||||
|
|
||||||
Thème sombre avec couleurs noir et or
|
## Sécurité
|
||||||
|
|
||||||
Aucune information sensible visible sur Gitea
|
- 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 d’envoyer le fichier `.env` sur Gitea
|
||||||
|
|
||||||
Sécurité
|
---
|
||||||
|
|
||||||
Les identifiants MySQL sont stockés dans un fichier .env (non visible sur Gitea)
|
## Exécution du projet en local
|
||||||
|
|
||||||
Connexion sécurisée avec PDO et requêtes préparées
|
Étape 1 — Ouvrir le dossier du projet
|
||||||
|
|
||||||
Mots de passe stockés avec password_hash() et vérifiés avec password_verify()
|
Télécharger ou cloner le projet depuis Gitea :
|
||||||
|
```bash
|
||||||
|
git clone https://gitea.lasallesaintdenis.com/safouane.bazzi/cms-simplifie.git
|
||||||
|
|
||||||
Fichier .gitignore empêche d’envoyer les données sensibles
|
Puis ouvrir le dossier cms-simplifie dans VS Code ou un autre éditeur.
|
||||||
|
|
||||||
Exécution du projet en local
|
Étape 2 — Préparer le fichier .env
|
||||||
Étape 1 — Ouvrir le dossier dans VS Code
|
|
||||||
|
|
||||||
Ouvre le dossier cms-simplifie.
|
Copier le fichier .env.example
|
||||||
|
|
||||||
Étape 2 — Vérifier le fichier .env
|
Le coller à la racine du projet
|
||||||
|
|
||||||
Si tu n’as pas de fichier .env, copie .env.example et renomme-le .env.
|
Le renommer en .env
|
||||||
|
|
||||||
Étape 3 — Lancer le serveur PHP
|
Modifier les informations selon la configuration MySQL locale :
|
||||||
|
|
||||||
Dans le terminal :
|
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
|
php -S localhost:8000 -t public
|
||||||
|
|
||||||
Étape 4 — Accéder au site
|
|
||||||
|
|
||||||
Va dans ton navigateur :
|
Si le port 8000 est déjà utilisé :
|
||||||
http://localhost:8000
|
|
||||||
|
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.
|
||||||
Reference in New Issue
Block a user