Projet Guidé : Blog de dev web
Étape 0 : Préparation de la base de données
Dans votre PHPMyAdmin, créez une base de données nommée prenomnom_j8_blog_soutien (avec la collation utf8_general_ci).
Importez les tables suivantes dans cet ordre :
Étape 1 : Mise en place des fichiers
Récupérez les fichiers de base pour le projet :
Décompressez l'archive dans votre dossier de travail.
Étape 2 : Le point d'entrée index.php
Dans le fichier index.php, vous devez gérer le routing de l'application en vérifiant les paramètres de l'URL ($_GET) :
Si
$_GET["route"]est égal àcategoryet que$_GET["category"]est présent :Faites un
requiredecontrollers/category.php.Appelez la fonction
categoryPage().
Si
$_GET["route"]est égal àpostet que$_GET["post"]est présent :Faites un
requiredecontrollers/post.php.Appelez la fonction
postPage().
Pour tous les autres cas (par défaut) :
Faites un
requiredecontrollers/home.php.Appelez la fonction
homePage().
Étape 3 : Le layout et la navigation
Ouvrez le fichier templates/layout.phtml et dynamisez les liens de la barre de navigation :
Accueil :
index.phpCatégorie Frontend :
index.php?route=category&category=1Catégorie Backend :
index.php?route=category&category=2Catégorie Intégration :
index.php?route=category&category=3
Étape 4 : La page catégorie
Le manager
Dans managers/category_manager.php, complétez la fonction getPostsForCategory() pour récupérer les articles liés à une catégorie spécifique.
Le contrôleur
Dans controllers/category.php, complétez la fonction categoryPage(): elle doit appeler le manager et transmettre les données au template.
Le template
Dans templates/category.phtml, remplacez l'intégration statique par les données dynamiques récupérées en base de données.
Étape 5 : La page article (Post)
Le manager
Dans managers/post_manager.php, complétez la fonction getPost() pour récupérer les détails d'un article grâce à son identifiant.
Le contrôleur
Dans controllers/post.php, complétez la fonction postPage() pour orchestrer la récupération des données de l'article.
Le template
Dans templates/post.phtml, dynamisez l'affichage des informations de l'article (titre, contenu, média associé).
Étape 6 : La page d'accueil
Le manager
Dans managers/category_manager.php, complétez la fonction getCategories() pour récupérer la liste de toutes les catégories.
Le contrôleur
Dans controllers/home.php, complétez la fonction homePage(). Vous devez :
Récupérer toutes les catégories.
Pour chaque catégorie, récupérer la liste de ses articles associés.
Le template
Dans templates/home.phtml, utilisez les données pour afficher dynamiquement les catégories et leurs articles respectifs.