L'interro porte sur les départements et les villes de France. Il vous sera utile de voir la base de données (pour connaitre le nom des tables et le nom des champs) en vous connectant :
- cliquez ici : phpMyAdmin
- login : sio
- mdp : sio
- nom de la base de données : villes
Et pour vous connecter à cette base de données en PHP :
- hôte : 10.53.130.250
- login : sio
- mdp : sio
- nom de la base de données : villes
Pour résumer on va utiliser les tables suivantes :
- departement (dep_id, dep_nom, ...)
- ville (ville_id, ville_departement, ville_nom_reel, ville_code_postal, ...)
ville_departement est une clé étrangère qui fait référence à departement.dep_id.
(4 points)
On va commencer par afficher la liste de tous les départements, triés par ordre alphabétique.
Le code HTML que vous devez générer pour chaque département ressemblera à :
<a href=?dep_id=84>84 - Vaucluse</a><br>
où :
(2 points + 4 points)
Après que l'internaute a cliqué sur un département, on va afficher toutes les villes correspondant à ce département.
Sachant que le département est passé dans l'URL (cf. 2ème étape), comment allez-vous récupérer sa valeur en PHP ?
Le code HTML que vous devez générer pour chaque ville ressemblera à :
84210 - Althen-des-Paluds<br>
où :
(3 points)
Modifiez l'affichage des départements de façon à ce que le code HTML généré ressemble à :
Remarquez que pour réaliser cela, il faut ajouter un formulaire (puisqu'on ne fonctionne plus avec des liens hypertexte <a>...</a>
mais avec un contrôle de formulaire <select>...</select>
).
(2 points + 2 points)
Cette-fois ci, l'internaute saisit un nom de ville dans une zone de texte. On affiche alors tous les départements dans lesquels une ville s'appelle ainsi.
Par exemple :
Si par exemple la ville est 'Vitrolles', quelle est la requête SQL qui sera exécutée par PHP pour obtenir les résultats attendus (vous pouvez tester cette requête directement dans phpMyAdmin) :
Copiez ici le code PHP correspondant à cette étape :
(2 points)
Améliorer (ou recopiez si c'est déjà géré) le code de l'étape précédente, de telle sorte que le "s" du pluriel soit bien géré selon qu'on n'affiche qu'un seul département ou plusieurs.
Par exemple :
(1 points)
Améliorer (ou recopiez si c'est déjà géré) le code de l'étape précédente, de telle sorte que la liste des départements soient affichée proprement (départements séparés par des virgules, liste terminée par un point).
Par exemple :
Vous avez fini !? GG ! Vous pouvez partir et reprendre une activité normale (genre aller à l'interro de Mme Fauconnier ;-) !