Bonjour,
Sur un site que je suis en train de faire, je rencontre un soucis avec la structure MVC dans le menu.
Ce site sans la structure MVC, le menu bootstrap fonctionne super bien avec le sous menu.
Quand je mets la structure mvc cela ne marche plus.
Voici le code du menu que j'ai mis dans un fichier a part puisque je fais un include de le fichier header.php :
Code html : 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 <nav class="navbar fixed-top navbar-expand-lg navbar-light bg-light"> <div class="burger"> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> </div> <div class="animated bounceInLeft delay-1s collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav ml-md-auto ml-auto mr-auto"> <li class="nav-item align-middle accueil"><a class="nav-link" href="/"><img class="image_accueil" src="<?= MEDIA; ?>/images/png/35px/accueil.png" alt="Icône pour l'accueil en forme de ruche" title="Icône pour l'accueil en forme de ruche" /></a></li> <li id="m-parrain" class="nav-item"><a class="nav-link" href="/parrainage" title="Accès à la page du Parrainage">Parrainage</a></li> <li id="m-exploitation" class="nav-item"><a class="nav-link" href="/exploitation" title="Accès à la page de L'exploitation">L'exploitation</a></li> <li id="m-sos-essaim" class="nav-item"><a class="nav-link sos_essaim" href="/sos_essaim" title="Accès à la page SOS Essaim">SOS Essaim</a></li> <li id="m-education-nature" class="nav-item"><a class="nav-link educ_nat" href="/education_nature" title="Accès à la page Education Nature">Education Nature</a></li> <li id="m-pollinisation" class="nav-item"><a class="nav-link" href="/pollinisation" title="Accès à la page de la Pollinisation">Pollinisation</a></li> <li id="m-boutique" class="nav-item"><a class="nav-link" href="/boutique" title="Accès à la page de la Boutique">Boutique</a></li> <li id="m-galerie" class="nav-item"><a class="nav-link dropdown-toggle" href="/galerie" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" title="Accès aux Galeries Photos et Vidéos">Galeries</a> <div class="dropdown-menu" aria-labelledby="navbarDropdown"> <a class="dropdown-item" href="/galerie_photos" title="Accès à la page Galerie Photos">Galerie Photos</a> <a class="dropdown-item" href="/galerie_videos" title="Accès à la page Galerie Vidéos">Galerie Vidéos</a> </div> </li> <li id="m-contact" class="nav-item"><a class="nav-link" href="/contact" title="Accès à la page Contact">Contact</a></li> </ul> </div> </nav>
Voici le fichier php ou je définis le fonctionnement de mes liens :
Code php : 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 <?php class Application { private $controleurs = 'accueil'; private $methode = 'index'; private $params = []; public function __construct() { $route = $this->getParams(); if ( file_exists( ROOT . 'application/controleurs/' . $route[0] . '.php' ) ) { $this->controleurs = $route[0]; unset ( $route[0] ); } require_once ROOT . 'application/controleurs/' . $this->controleurs . '.php'; if ( isset ( $route[1] ) ) { if ( method_exists( $this->controleurs, $route[1] ) ) { $this->methode = $route[1]; unset( $route[1] ); } } $this->controleurs = new $this->controleurs; $this->params = $route ? array_values( $route ) : []; call_user_func_array( [ $this->controleurs, $this->methode ], $this->params ); } private function getParams() { if ( isset( $_GET['route'] ) ) return explode( '/', filter_var( rtrim( $_GET['route'], '/' ), FILTER_SANITIZE_URL ) ); } }
Voici mon controleur :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php class Controleur { protected function vues( string $vues, array $data = [] ) { require_once ROOT . 'application/vues/' . $vues . '.php'; } }
Merci de m'aider afin de pouvoir afficher le sous menu de galeries svp.






Répondre avec citation




Partager