Bonsoir à tous,
J'apprend à travailler avec l’architecture MVC. Je me suis lancer sur un projet de blog, dont les publications s'affiche par catégories.
Il y a une problématique que je n'arrive pas à résoudre. Votre aide serait donc la bien venue
Mon code index.php
mon fichier category_view.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 <?php //inclision des fichiers principaux include_once '_config/config.php'; include_once '_config/db.php'; include_once '_function/functions.php'; include_once '_classes/Autoloader.php'; Autoloader::register(); /*$var = new Postes(1); debug(Postes::getAllPostes()); debug($var);*/ //definition de la page courante if(isset($_GET['page']) AND !empty($_GET['page'])){ $page = trim(strtolower($_GET['page'])); }else{ $page = 'home'; } /**tableau contenant toutes les pages * la fonction scandir va retourner un tableau * de tous les fichiers et dossiers issus du dossier * controllers*/ $allpage = scandir('controllers/'); //Verification de l'existence des pagesxxxxxxxxxxxx if(in_array($page.'_controller.php', $allpage)){ include_once 'models/'.$page.'_model.php'; include_once 'controllers/'.$page.'_controller.php'; include_once 'views/'.$page.'_view.php'; foreach($allCategories as $index => $category){ if($_GET['Entreprenariat'] === $category['name'] ){ echo "hello"; } } }else{ echo "ERREUR 404"; }
Comme vous pouvez le constater j'essaye de récupérer a partir de l'url la catégorie sélectionnée et évidemment vue que la page dans l'url n'est pas dans le dossier controllers
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 <!DOCTYPE html> <html lang="fr"> <!--head --> <?php include_once 'views/includes/head.php';?> <body> <!--header --> <?php include_once 'views/includes/header.php';?> <!-- liste des catégories --> <div class=" container nav-scroller py-1 mb-2"> <nav class="nav d-flex justify-content-between"> <?php foreach($allCategories as $index => $category) : ?> <a class="p-2 text-muted" href="../?page=category/?<?=$category['name']?>"><?=$category['name']?></a> <?php endforeach ?> </nav> </div> <div class="jumbotron p-4 p-md-5 text-white rounded bg-dark"> <div class="col-md-6 px-0"> <h6 class="display-4 font-italic"><?=$lastPoste['title']?></h6> <p class="lead my-3"><?=$lastPoste['content']?></p> <p class="lead mb-0"><a href="#" class="text-white font-weight-bold">Lire la suite...<a></p> </div> </div> <!-- poste générale --> <main role="main" class="container"> <div class="row"> <div class="col-md-8 blog-main"> <h3 class="pb-4 mb-4 font-italic border-bottom"> Autre postes </h3> <?php foreach($allPostes as $index => $poste) : ?> <!--Blogs poste--> <div class="blog-post"> <h4 class="blog-post-title"><?=$poste['title']?></h4> <p class="blog-post-meta"><?=date_format(date_create($poste['date']), "d/m/Y à H:i")?> par <a href="#"><?=$poste['firstname'].' '.$poste['lastname']?></a></p> <p><?=$poste['content']?></p> </div><!-- /.blog-post --> <?php endforeach?> </div><!-- /.row --> </main><!--<!-- /.container --> <!--footer --> <?php include_once 'views/includes/footer.php';?> </body> </html>
je récois une erreur 404.
comment je peux contourner ce problème? merci d'avance
Partager