Description du sujet
Nous désirons créer un site web appelé << Ma salle de sport >>, permettant à un utilisateur de reserver des cours de sports.
Il y a 3 types d’utilisateurs :
- Les adhérents
- Les profs de sports
- Un administrateur
Les adhérents peuvent réaliser n’importe quel sport. Un prof de sport peut enseigner 2 sports.
Partie 1 - L’administrateur
Créer la page ajouterProf.php
contenant le formulaire suivant :
- un champ pour le nom du prof
- un champ pour le prénom du prof
- un champ pour la date d’embauche
Les informations du formulaire devront être envoyées à la page enregistrerProf.php
Créer la page enregistrerProf.php
permettant d’enregistrer le contenu du formulaire dans un fichier infoProfs.csv
. Cette page doit :
- Afficher la liste des profs déjà enregistrés
- Contenir un lien permettant de revenir à la page précédente
- Générer un login pour le prof. Le login doit être réalisé avec la première lettre du prénom et l’ensemble de son nom de famille. attention : il faudra vérifier dans le fichier s’il n’y a pas déjà un un homonyme. S’il y a un homonyme rajouter un numéro aléatoire après la génération du login.
- Générer un mot de passe aléatoire pour le prof. attention les mots de passes des professeurs devront être encodés en md5
- Enregistrer les informations du professeur dans le fichier
infoProfs.csv
Voici un exemple du fichier texte pour infoProfs.csv
:
Dupont;Gerard;24-02-2015;gdupont;1611292af9e5d66e2d9f8eb8ddc9af1c
Laffite;Thibault;02-02-2020;tlaffite;99c71caeb8b8c2e3d71cbd1bc91c16ae
Créer la page ajouterSport.php
contenant le formulaire suivant :
- une liste déroulante contenant le nom des profs enregistrés dans le fichier
infoProfs.csv
- un champ pour le sport 1
- un champ pour le sport 2
Les informations du formulaire devront être envoyées à la page enregistrerSport.php
- Créer la page
enregistrerSport.php
permettant d’enregistrer le contenu du formulaire dans un fichier profSports.csv
. Cette page enregistrerSport.php
doit :
- vérifier si le prof est déjà présent dans le fichier et effacer la ligne correspondante pour mettre les deux sports que réalise le prof
- afficher le contenu du fichier déjà ajoutés (+le nouveau)
- contenir un lien permettant de revenir à la page précédente.
Voici un exemple du fichier texte pour profSports.csv
:
gdupont;crossfit;step
tlaffite;stretch;yoga
Partie 2 - Les profs de sports
Créer un cours de sport
- Créer la page
ajouterCours.php
contenant le formulaire suivant :
- un champ pour la date
- un champ pour le resume
- un ou plusieurs champs pour indiquer l’adresse de la salle
- un champ text pour indiquer le sport
- une liste déroulante avec les pseudos de profs de sports
Les informations du formulaire devront être envoyées à la page enregistrerCours.php
Créer la page enregistrerCours.php
permettant d’enregistrer le contenu du formulaire dans un fichier infoCours.csv
. Cette page doit :
- créer un identifiant unique pour le cours (génération aléatoire d’une chaine de caractères). Exemple: ABC1456
- ajouter le contenu du formulaire au fichier
infoCours.csv
- afficher tout les cours
- contenir un lien permettant de revenir à la page précédente.
Voici un exemple du fichier texte pour infoCours.csv
:
ABC1456;gdupont;10-12-2025;cours permettant de renforcer les adducteurs;24 avenue des fleurs;64 000 Pau;stretch
AZER532;tlaffite;11-12-2025;cours permettant de renforcer le dos;24 avenue des fleurs;64 000 Pau;yoga
Partie 3 - Les visiteurs
Rechercher un cours
- Créer la page
rechercherCours.php
contenant le formulaire suivant un champ text pour entrer le nom du sport
Les informations du formulaire devront être envoyées à la page resultatsRechercheCours.php
- Créer la page
resultatsRechercheCours.php
permettant de rechercher dans le fichier du infoCours.csv
le nom du sport. S’il y a une ou plusieurs recherches correspondantes, alors on affiche le résultat de recherche avec un bouton inscription cours
en face de chaque résultat. La page devra contenir un lien permettant de revenir à la page précédente.
Inscription à un cours
Créer la page inscriptionCours.php
contenant le formulaire suivant :
- un champ pour le nom
- un champ pour le prénom
- un champ pour le numéro de téléphone
- un champ pour l’age
Les informations du formulaire devront être envoyées à la page enregistrerInscription.php
- Créer la page
enregistrerInscription.php
permettant d’enregistrer le contenu du formulaire précédent dans le fichier ABC1456-cours.csv
La page devra contenir un lien permettant de revenir à la page précédente.
Voici un exemple du fichier texte pour ABC1456-cours.csv
:
Taballonne;Xabi;05 54 65 21 23; 45
Martin;Simon;07 44 65 77 22; 24
Partie 4 - la page de connexion
L’authentification
- Créer la page
connexion.php
contenant le formualaire suivant :
- un champ pour le login
- un champ pour le mot de passe
Les informations du formulaire devront être envoyées à la page verifierConnexion.php
- Créer la page
verifierConnexion.php
.
si l’utilisateur est enregistré dans le fichier infoProfs.csv
, alors redirigez l’utilisateur vers la page accueil.php
avec le menu suivant : ajouter un cours
si l’utilisateur est entre le login admin
et le mot de passe admin
, alors redirigez l’utilisateur vers la page accueil.php
avec le menu suivant : ajouter un prof et ajouter un sport
si l’autentification de l’utilisateur est éroné, alors redirigez l’utilisateur vers la page connexion.php
En tant que visiteur
- rechercher un cours
- connexion
En tant que prof
- accueil
- ajouter un cours
- deconnexion
En tant que admin
- accueil
- ajouter un sport
- ajouter un prof
- deconnexion
Bonus
- Donnez la possibilité à l’administrateur de modifier et supprimer un prof
- Ajouter la possibilité à un prof de voir qui qui s’est inscrit à ses cours
- Autres : selon votre immagination !
Consignes
- Les rendus se feront dans la classe TEAMS prévue à cet effet => ici
- Les rendus par mails ne seront pas acceptés !
- Deadline : dimanche 12 mai 23h59min
- Le rendu de ce TP est un travail personnel. En plus d’une pénalité au niveau de la note qui sera de 0, une procédure de gestion des fraudes à un examen pourra être envisagée.
- Aucune question ne pourra être posée à l’enseignant. À vous d’interpréter le sujet.
- Le TP est à réaliser en dehors des heures de cours
- Vous interprétez le sujet comme vous le souhaitez. Vous pouvez créer le nombre de pages que vous souhaitez.
- Vous pouvez vous inspirer (fortement conseillé) de ce qu’on a vu en TP.
- Il faut que vous utilisiez : du javascript, du php, du html et du css.
- Vous pouvez utiliser du css si vous le souhaitez.
Le barème
à titre indicatif : il pourra évoluer en fonction de la qualité (ou pas) de vos rendus.
