Contexte

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.

I — Conception de la base de données

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.

II — Connexion et récupération de données

Sur le serveur (web.sio.local) :

  • Créer le dossier revisions.
  • Créer le fichier config.php (dans revisions) avec les paramètres de connexion à la base de données.
  • Créer le fichier student-list.php permettant 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.

III — Formulaires et création de données

  • Créer le fichier student-edit.html contenant un formulaire pour saisir le nom et le prénom d’un étudiant.
  • Créer le fichier student-add.php qui 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.