AlloSimplon
Plateforme de streaming type Netflix
Back-end PHP natif complet — authentification, CRUD admin, recherche AJAX, BDD relationnelle et containerisation Docker. Réalisé en formation Simplon.

Contexte
Projet de formation Simplon — demande client fictive
Année
2023
Niveau
BAC+2 Développeur Web
Type
Projet individuel
Stack
PHP natif / MySQL / Docker
Durée
Sprint de formation
Un Netflix éducatif — 100% fait main
Dans le cadre de ma formation BAC+2 développeur web à Simplon, j'ai reçu une demande client fictive : créer une plateforme de streaming dédiée aux apprenants de l'école.
L'objectif était de démontrer la maîtrise du back-end PHP natif sans framework — tout le routing, l'authentification, les formulaires et le CRUD ont été développés de zéro.
Le résultat : une application complète avec gestion des films, acteurs, réalisateurs, genres, un système de rôles admin/user, et une recherche en temps réel via AJAX.
$ git clone github.com/body08120/allosimplon
$ docker compose up -d
⏳ Démarrage MySQL + PHP-Apache...
✅ Site disponible sur localhost:8001
# Admin panel
email admin@allosimplon.fr
pass admin123
Ce que le projet couvre
Authentification complète
Système de connexion/inscription avec gestion des rôles (user / admin), mots de passe hashés en bcrypt, protection CSRF.
Recherche AJAX temps réel
Moteur de recherche par titre de film avec résultats instantanés sans rechargement de page, via appels AJAX natifs.
Panel d'administration CRUD
Interface admin complète pour gérer films, acteurs, réalisateurs, genres et utilisateurs. Associations multi-entités.
Sécurité applicative
Requêtes préparées PDO (anti SQL injection), validation des entrées avec htmlspecialchars(), protection CSRF sur les formulaires.
BDD relationnelle
Modèle de données avec tables de liaison (films ↔ acteurs, films ↔ genres, films ↔ réalisateurs). Architecture normalisée.
Containerisation Docker
Stack complète Docker Compose (PHP-Apache + MySQL) avec détection automatique de l'environnement et données de test incluses.
Technologies utilisées
PHP 8.2
Backend
MySQL 8.0
Base de données
Apache 2.4
Serveur
Tailwind CSS
Frontend
Flowbite
UI Components
AJAX Vanilla JS
Frontend
Owl Carousel
Frontend
Docker
DevOps
Architecture BDD
users
├── id, nom, prenom, email
└── role (1=user · 2=admin)
films
├── id, nom, synopsis, date
└── img_film, ba_film (YouTube)
genres ↔ possede ↔ films
realisateurs ↔ tourner ↔ films
acteurs ↔ possede2 ↔ films
L'interface en images
Design dark violet — responsive desktop & mobile
Interface publique





Panel d'administration






Ce que ce projet m'a appris
Les compétences acquises et les pistes d'amélioration identifiées.
✅ Points forts
- •Architecture MVC structurée sans framework
- •BDD relationnelle avec tables de liaison
- •CRUD complet pour toutes les entités
- •AJAX natif sans jQuery ni librairie
- •Config Docker avec détection auto d'environnement
- •Données de test incluses (6 films complets)
⚠️ Améliorations identifiées
- •Renforcer la validation côté serveur
- •Implémenter un système de favoris/watchlist
- •Ajouter un système de notation et commentaires
- •Optimisation images (WebP, lazy loading)
- •Tests unitaires et intégration
- •Séparer davantage logique métier et vues