J'ai une base de données avec catégories et post, à l'heure actuelle, j'y ai accès à travers leurs contrôleurs de la manière suivante: "/ Catégorie / ID" et "/ POST / ID" P>
Mais maintenant, je veux accéder au prochain chemin: "/ Nom / Post_Name" P>
La chose logique serait d'utiliser "/application/config/routes.php"
et créer: Le problème est que dans mon chemin recherché est possible, les sous-catégories comme "/ Catégorie1_Name / Catégorie2_Name / Post_Name" P>
J'essaie de créer la prochaine route:
est-il possible de générer mon chemin de contrôle? P> € route ['((: n'importe quel) / (: tout)'] = 'post'; code> p> p> p>
$ route ['(\ w | /) *'] = 'itinéraire'; code>
Mais il génère un problème avec mes autres contrôleurs et ne vous recommande pas d'appeler un contrôleur d'un autre contrôleur. P>
3 Réponses :
<?php class Post extends CI_Controller { function load($parameter1 , $parameter2 ) { echo $parameter1."<br>"; echo $parameter2; } } ?>
Pour le moment, j'essaye ceci:
Comment existe-t-il des sous-catégories, le nombre de catégories dans le chemin est variable, comment l'URL n'est pas infinté, j'ai défini une optimise de catégories sur le chemin et j'inclus ce code dans le "Application / Config / Config / Routes.PHP" CODE>: P>
$i = 4; $route['(:any)'] = function ($param0="",$param1="",$param2="",$param3="",$param4="",$param5=""){ global $i; if($param0 == "user" || $param0 == "home" || $param0 == "post" || $param0 == "user") return $param0; else return 'route'; };
Enfin, j'ai amélioré le code, j'accède aux variables extérieures à partir de la fonction anonyme avec utilisation (), définissez une quantité maximale de catégories dans l'URL et que je génère une matrice avec des noms de contrôleur, au cas où le chemin est un chemin du contrôleur, le routage de son chemin Pour lui, sinon, le routage du contrôleur de route.
code dans "application / config / config / routtes.php" code>: p>
Quel type de "problème" avec d'autres contrôleurs êtes-vous confronté?
Quand j'utilise
$ route ['(\ w | /) *'] = 'itinéraire'; code> Je ne peux pas accéder à mes autres contrôleurs. Parce que tout chemin est redirect sur le contrôleur d'itinéraire
Ensuite, vous devriez penser à la priorité aux règles (définir cette règle spécifique après tous les autres) ou introduire un préfixe spécifique pour cette règle.