D'accord,Codeigniter - le segment URI pour une location variable d'index
donc en gros ce que je veux faire est la route l'URL comme ceci:
www.mypage.com/{controller}/[var1]/{any-function}
C'est, le segment 2 doit toujours être réservée pour la variable passant dans l'index, tandis que tous les segments suivants devraient appeler les fonctions comme d'habitude. J'ai essayé de jouer avec routes.php mais je n'ai pas réussi à le faire fonctionner.
Comment dois-je aborder cette question?
EDIT:
$route['(:any)'] = "site/$1";
$route['(:any)/(:any)'] = "site/$1/$1";
$route['(:any)/(:any)/(:any)'] = "site/$1/$1/$1";
$route['/(:any)/news'] = "site/index/news";
$route['12'] = 'site/index/$1/';
$route['47'] = 'site/index/$1/';
...
www.mypage.com/news
- ne fonctionne (fonction d'appel)
www.mypage.com/12/
- ne fonctionne (variable de passage à l'index)
www.mypage.com/12/news
- doesn » T travail et le but est de le faire fonctionner en faisant les deux actions ci-dessus dans l'url singulière. Rappelez-vous qu'il y a plus de fonctions que de simples «nouvelles», alors ne nous limitons pas à cela.
12
-variable; news
- fonction existante et fonctionnelle.
> le segment 2 doit toujours être réservé pour passer la variable dans l'index Comment voulez-vous dire? Quand une requête est faite, elle pointe sur une "adresse" spécifique, que ce soit "controller_name/index" ou "controller_name/other_method". Peut-être que vous cherchez [remappage] (https://codeigniter.com/userguide3/general/controllers.html#remapping-method-calls)? – Tpojka
Eh bien, je veux que le premier/second (en fonction du cas si le contrôleur est configuré pour être en url) soit toujours une variable d'un index quelle que soit la fonction que j'appelle. 'mypage.com/controller/news' devrait devenir' mypage.com/controller/var/news'. Par défaut, il recherchera une fonction 'var' qui n'existe pas et n'utilisant pas et ne passant pas cette variable à l'index et ALORS recherchant une fonction 'news' comme je le souhaite. – SmOg3R
Fournissez vos méthodes à quoi elles ressemblent pour le moment et aussi ce que vous avez essayé dans le fichier routes.php. Il est difficile de suivre ce que vous voulez d'une pseudo ligne de code. En question éditée, pas dans le commentaire. – Tpojka