Objectif pédagogique
Tu vas créer une application web de gestion d’événements, composée de deux parties :
- Front-office : ce que les visiteurs voient (liste d’événements, réservation de tickets…)
- Back-office : ce que les organisateurs utilisent pour gérer les événements, artistes, lieux, et réservations
Ce projet te permettra de mobiliser des compétences en développement web (PHP, MySQL, HTML/CSS/JS), organisation en équipe agile, et structuration d’un projet complet côté client et côté serveur.
Consignes générales
-
Crée le schéma de base de données avec looping.
- Une fois terminé, celui-ci peut être exporté en SQL.
- Demande Ă un IA d'adapter ce SQL pour MySql
-
Créer ta base de données en exécutant les scripts SQL générés
- Tu peux aussi demander à une IA de générer des
insert pour des données de test
-
Utilise Trello pour gérer ton projet. A partager avec le prof.
-
Sauvegarde ton code avec github. A partager avec le prof.
🎛️ Partie back-office (pour les organisateurs)
Pages accessibles uniquement en étant connecté en tant qu’organisateur :
Gestion des événements
- Affichage d’une liste d’événements

- Création, édition d'un événement
- Suppression d’un événement
Liste des tickets achetés

Gestion des lieux (venues)
- Nom
- Type (salle, théâtre, plein air, etc.)
- Adresse
- URL (site ou page de présentation)
- Photo


Gestion des artistes
- Nom
- URL (site, page, profil)
- Photo


🖥️ Partie front-office
Pages accessibles sans se connecter :
-
Page d’accueil :
- Affiche tous les événements sous forme de cartes visuelles (cards)

✅ Compétences travaillées
- Développement back-end en PHP (MVC, CRUD)
- Base de données MySQL (relations entre événements, lieux, artistes, tickets)
- Interfaces utilisateur (HTML/CSS/JS, responsive design)
- Génération de code unique pour les tickets
💡 Conseils méthodologiques
- Commence par la base de données : schéma clair, bien relié
- Utilise des fichiers séparés pour le front et le back
- Teste chaque partie au fur et Ă mesure
- Sauvegarde régulièrement avec Git + GitHub
Voici un schéma E/A conseillé pour le projet Event Manager v1. Il repose sur une relation 1-N entre événements, lieux et artistes, et une relation N-1 entre tickets et événements.
🗂️ Schéma entité-association conseillé
Entités principales
Evenement
- id_evenement (PK)
- titre
- description
- date_heure (DATETIME)
- prix (DECIMAL)
- #id_venue (FK → Venue)
- #id_artiste (FK → Artiste)
➡ Un événement est lié à un seul lieu et un seul artiste
Venue
- id_venue (PK)
- nom
- type (salle, théâtre, plein air…)
- adresse
- url
- photo
➡ Un lieu peut accueillir plusieurs événements
Artiste
- id_artiste (PK)
- nom
- url
- photo
➡ Un artiste peut participer à plusieurs événements
Ticket
- id_ticket (PK)
- code_unique (VARCHAR) — généré automatiquement
- nom_complet (VARCHAR) — nom complet de l'acheteur
- quantite (INT) — nombre de places réservées
- prix_personne (DECIMAL) — prix par personne
- prix_total (DECIMAL) — prix total du ticket
- date_reservation (DATETIME)
- utilise (BOOLEAN) — ticket déjà scanné ?
- #id_evenement (FK → Evenement)
➡ Un ticket correspond à une réservation pour un événement
Schéma visuel simplifié (notation texte)
Venue (1) ────────< (N) Evenement (1) ────────< (N) Ticket
|
v
(1) Artiste
Contraintes Ă respecter
- Le code du ticket est unique.
- Un événement ne peut avoir qu’un seul lieu et qu’un seul artiste.
- Un ticket appartient à un seul événement.
- Les suppressions d’événements doivent gérer les dépendances (tickets liés).