Ce projet, réalisé en groupe au début de la seconde année de mon BTS, avait pour but de répondre à un contexte donné. L'objectif principal était de mettre en place une application web permettant la réservation en ligne pour une soirée ainsi que la gestion globale de ces soirées par le gestionnaire.
Ce projet s'inscrit dans un environnement agile avec l'utilisation de la méthode SCRUM.
Pour assurer le bon déroulement du projet, différentes étapes et pratiques agiles ont été suivies :
La base de donnée est simple, elle comporte 2 table : Soirée et Réservation que l'on retrouve dans ce shéma MCD
Au sein d’une équipe de quatre étudiants, j’ai collaboré avec un autre membre sur le développement de la partie administration du site, principalement axée sur la gestion des soirées proposées.
J’ai mis en place un système permettant au gestionnaire de créer, modifier et supprimer des soirées.
En complément, j'ai travaillé sur l’aspect visuel du site en tâche annexe.
Le fichier index.php agit comme le cœur du modèle MVC dans ce projet. C’est lui qui interprète les paramètres d’URL et redirige vers le bon contrôleur en fonction de ce qui est demandé.
Voici un extrait clé du fichier index.php :
La balise nav contient des liens HTML qui passent des paramètres dans l'URL (comme controleur et action).
Prenons l’exemple du lien Gérer vos soirées :
Quand ce lien est cliqué :
Lorsque le gérant clique sur le bouton "Gérer vos soirées" depuis la page d’accueil ou le menu, le lien suivant est appelé dans le navigateur :
index.php?controleur=Soiree&action=consultation
Ce lien transmet deux paramètres :
Le fichier index.php
analyse l’URL et redirige vers le contrôleur
gestionSoiree.php
.
Le contrôleur identifie l’action consultation
et exécute :
SoireeDAO
soiree.php
La méthode appelée dans SoireeDAO
exécute une requête SQL pour obtenir toutes les soirées et
renvoie le résultat sous forme de tableau.
La vue soiree.php
utilise la variable $listeSoirées
pour construire un tableau HTML
contenant les informations : nom, date, lieu, etc.
Lorsque le gérant clique sur le bouton "Ajouter une soirée" depuis la page Gérer vos soirées, le lien suivant est appelé dans le navigateur :
index.php?controleur=Soiree&action=AjouterSoiree
Ce lien transmet l’action AjouterSoiree
au contrôleur gestionSoiree.php
, qui charge
le formulaire d’ajout.
Le contrôleur reçoit action=AjouterSoiree
Il affiche directement le fichier formulaireAjoutSoiree.php
, qui contient le formulaire HTML.
Ce formulaire utilise la méthode POST et envoie les données vers :
index.php?controleur=Soiree&action=enregSoireeAjoutee
Le contrôleur reçoit action=enregSoireeAjoutee
:
AjouterUneSoiree()
dans SoireeDAO.php
pour insérer les
données dans la baseLa méthode dans SoireeDAO.php
exécute une requête INSERT
.
Depuis la page de consultation des soirées, l’administrateur clique sur un bouton "Modifier" associé à une soirée précise. Cela déclenche un appel de ce type :
index.php?controleur=Soiree&action=modifierSoiree&idSoiree=5
Ce lien demande à afficher un formulaire pré-rempli pour modifier la soirée avec idSoiree=5
.
Le contrôleur reçoit action=modifierSoiree
Il affiche le fichier formulaireModifSoiree.php
pré-rempli.
Le formulaire envoie les données modifiées vers :
index.php?controleur=Soiree&action=enregSoireeModif&idSoiree=5
Le contrôleur reçoit action=enregSoireeModif
:
Le contrôleur appelle une méthode dansSoireeDAO.php
pour modifier les données :
Depuis la page de consultation des soirées, un administrateur clique sur le bouton "Supprimer" à côté d’une soirée. Ce clic envoie une requête du type :
index.php?controleur=Soiree&action=supprimerSoiree&idSoiree=5
Le contrôleur détecte action=supprimerSoiree
Le contrôleur appelle la méthode SupprimerSoiree()
dans SoireeDAO.php
pour supprimer la ligne correspondante :
Une fois la requête exécutée, la vue ConfirmationSuppression.php
s’affiche pour informer
l’utilisateur que la soirée a bien été supprimée.
Le code source complet du projet est disponible sur mon dépôt GitHub : Accéder au dépôt.
Ce projet m'a permis de renforcer plusieurs compétences techniques et organisationnelles, notamment :
Le projet a abouti à une application fonctionnelle répondant aux besoins du gestionnaire et améliorant la gestion des soirées étoilées.
Domaine d'activité 1 Support et mise à disposition des services informatiques |
Domaine d'activité 2 Conception et développement d'applications |
Domaine d'activité 3 Cybersécurité des services informatiques |
---|---|---|
Activité 1.1 : Travailler en mode projet - Analyser les objectifs et les modalités d’un projet - Planifier les activités - Réaliser une analyse de l’existant - Identifier les indicateurs de suivi du projet - Analyser les écarts Activité 1.5 : Mettre à disposition des utilisateurs un service informatique - Suivre les indicateurs - Vérifier le bon fonctionnement des pages et modules réalisés Activité 1.6 : Organiser son développement professionnel - Mettre en place son environnement d’apprentissage personnel - Mettre en œuvre des outils de veille informationnelle |
Activité B2.1 : Conception et développement d’une solution applicative - Participation à l’analyse fonctionnelle d’une solution applicative - Utilisation d’un environnement de développement - Réalisation des tests nécessaires à la validation - Exploitation des sources et framework - Développement, utilisation ou adaptation de composants logiciels Activité B2.2 : Assurer la maintenance corrective ou évolutive d’une solution - Évaluer et améliorer les performances - Corriger un dysfonctionnement - Mettre à jour les informations sur une version Activité B2.3 : Gestion des données - Développement et administration d’une base de données - Interrogation avec un langage de requêtes (SQL) |
Activité 3.1 : Protection des données personnelles et de l’identité numérique de
l’organisation - Respecter les traitements autorisés - Signalement des risques liés au stockage et à la transmission de données personnelles Activité B3.5 : Cybersécurisation d’une solution applicative et de son développement - Mise en œuvre et vérification de la conformité d’une solution aux règles de sécurité - Prévention des attaques - Application d’un référentiel ou standard de sécurité |