Pour réaliser le projet d’application web, vous aurez besoin de mobiliser des compétences étudiées en première année :
- algorithmique et programmation ;
- modélisation, bases de données et SQL ;
- programmation web (HTML, CSS, PHP).
Cette activité est conçue pour vous guider dans ces révisions. L’utilisation et la mise à jour de votre memento est recommandée.
Soit le domaine de gestion suivant :
- un étudiant a un nom et un prénom ;
- une organisation à un nom et une catégorie (ESN, service informatique, administration…) ;
- un étudiant peut réaliser plusieurs stages (dans une organisation), et une organisation peut accueillir plusieurs étudiants ; le système d’information doit permettre de connaître la liste des organisations fréquentées par un étudiant, et la liste des stagiaires accueillis dans une organisation.
Les noms des entités et des attributs doivent être en anglais. Les entités
doivent être identifiées par un attribut id_nom_entité.
Travail à faire sur papier :
- Réaliser le MCD correspondant à la description du domaine de gestion décrit.
- Établir le modèle relationnel correspondant au MCD.
- Rédiger les requêtes SQL permettant :
- de créer les tables ;
- d’insérer des données (3 organisations, 3 étudiants, 4 stages) ;
- de lister chaque organisation, avec pour chacune la liste des étudiants accueillis (s’il y en a - cf jointures externes).
Travail à faire sur machine :
- Créer les tables et insérer les données sur le serveur
web.sio.local.
Sur le serveur (web.sio.local) :
- Créer le dossier
revisions. - Créer le fichier
config.php(dansrevisions) avec les paramètres de connexion à la base de données. - Créer le fichier
student-list.phppermettant de lister et d’afficher la liste des étudiants. Utiliser l’API PDO. - Utiliser le cadriciel CSS W3.CSS pour donner du style à la page.
- Créer le fichier
student-edit.htmlcontenant un formulaire pour saisir le nom et le prénom d’un étudiant. - Créer le fichier
student-add.phpqui récupère les données saisies dans le formulaire (cf$_POST) et les insère dans la base de données (utiliser une requête préparée) ; l’utilisateur est ensuite redirigé vers la liste. - Ajouter les liens permettant de passer d’une page à l’autre.
- Utiliser le cadriciel W3.CSS pour donner du style à la page.