Projet Guidé: Blog de dev web
Étape 0 : base de données
Dans votre PHPMyAdmin, créez une base de données prenomnom_j8_blog_soutien (collation utf8_general_ci) dans laquelle vous allez importer les tables suivantes (dans cet ordre) :
Étape 1 : créer les dossiers et fichiers
Récupérez les fichiers du projet :
Étape 2 : l'index.php
Dans l'index.php, vous allez vérifier si vous allez devoir vérifier les paramètres d'URL et créer une condition :
Si
$_GET["route"]existe et vautcategory, et que$_GET["category"]existe : faites un require decontrollers/category.phpet appelez la fonctioncategoryPage()Si
$_GET["route"]existe et vautpost, et que$_GET["post"]existe : faites un require decontrollers/post.phpet appelez la fonctionpostPage()Dans tous les autres cas : faites un require de
controllers/home.phpet appelez la fonctionhomePage()
Étape 3 : le layout
Dans le fichier templates/layout.phtml vous allez devoir dynamiser la barre de navigation :
le lien vers l'accueil vaut
index.phple lien vers la catégorie Frontend vaut
index.php?route=category&category=1le lien vers la catégorie Backend vaut
index.php?route=category&category=2le lien vers la catégorie Intégration vaut
index.php?route=category&category=3
Étape 4 : la page category
Le manager
Dans le fichier managers/category_manager.php vous allez devoir remplir la fonction getPostsForCategory().
Le controller
Dans le fichier controllers/category.php vous allez devoir remplir la fonction categoryPage().
Le template
Dans le fichier templates/category.phtml vous avez une intégration statique, utilisez les données récupérées dans la base de données (donc les variables que vous avez créées dans la fonction categoryPage()) pour rendre cette intégration dynamique.
N'oubliez pas les liens des articles qui devront être sous la forme index.php?route=post&post=[id-du-post] où vous remplacerez [id-du-post] par les bonnes valeurs.
Étape 5 : la page article
Le manager
Dans le fichier managers/post_manager.php vous allez devoir remplir la fonction getPost().
Le controller
Dans le fichier controllers/post.php vous allez devoir remplir la fonction postPage().
Le template
Dans le fichier templates/post.phtml vous avez une intégration statique, utilisez les données récupérées dans la base de données (donc les variables que vous avez créées dans la fonction postPage()) pour rendre cette intégration dynamique.
Étape 6 : la page d'accueil
Le manager
Dans le fichier managers/category_manager.php vous allez devoir remplir la fonction getCategories().
Le controller
Dans le fichier controllers/home.php vous allez devoir remplir la fonction homePage(). Au départ, récupérez toutes les catégories puis pour chaque catégorie, récupérez la liste de ses posts.
Le template
Dans le fichier templates/home.phtml vous avez une intégration statique, utilisez les données récupérées dans la base de données (donc les variables que vous avez créées dans la fonction homePage()) pour rendre cette intégration dynamique.
N'oubliez pas les liens des articles qui devront être sous la forme index.php?route=post&post=[id-du-post] où vous remplacerez [id-du-post] par les bonnes valeurs.