Les exercices suivants sont des exercices supplémentaires pour réviser le troisième chapitre de cours. Ils viennent en complément du TP3 qui doit être terminé avant de faire ces exercices. Ces exercices sont optionnels mais permettent de revoir les principales notions du chapitre 3. Ce TP nécessite la classe Model
du TP de révisions du chapitre 2. Il faut donc faire ce TP avant de commencer.
Exercice 1 : Création du squelette MVC du site
- Créer le squelette du site MVC :
- créer les répertoires
Controllers
,Models
,Utils
etViews
; - ajouter les vues
begin
etend
contenant le début et la fin du code html d’une page Web ; - ajouter le routeur
index.php
; - ajouter la classe abstraite
Controller
; - ajouter le fichier
functions.php
avec la définition de la fonctione
.
- créer les répertoires
- Copier le fichier
Model.php
du TP de révisions du chapitre 2 permettant d’interagir avec la tablepersonnages
.
Exercice 2 : Affichage des différents noms de famille
-
Définir la vue
families
affichant le contenu du tableau de chaînes de caractères$familyNames
sous forme d’une liste non ordonnées. -
Créer le contrôleur
Simpson
dont l’action par défaut (actionfamilies
) affiche la liste des différents noms de familles des personnages contenus dans la tablepersonnages
. Cette action utilisera la vue définie précédemment.
Exercice 3 : Affichage des membres d’une même famille
-
Définir la vue
familyMembers
affichant la liste des membres d’une même famille. La vue doit afficher le nom de famille (variable$family
) puis la liste des membres de cette famille (stockés dans la variable$fm
). Pour chacun des membres de la famille, la vue affichera le prénom suivi de l’âge (ou la mention “âge non défini” si celui-ci n’existe pas dans la table). -
Définir l’action
members
du contrôleurSimpson
. Celle-ci doit d’abord vérifier qu’il existe dans l’url un paramètrefamily
. Si ce n’est pas le cas, la page affichée doit uniquement contenir le paragraphe : “D’oh! Pas de paramètre, pas d’affichage !”. Autrement, l’action doit afficher la liste des membres de la famille dont le nom est donné par le paramètrefamily
grâce à la vue définie à la question précédente. -
Modifier la vue
families
de l’exercice 2 pour que les noms de familles soient des hyperliens sur l’actionmembers
permettant l’affichage des membres de chaque famille.