маршрутизации Codeignitor

голоса
-1

У меня есть сайт codeignitor и ссылка для внутренних страниц выглядеть следующим образом:

http://www.example.com/pages/Campus-Tour/18/3

Я хочу сделать довольно URL, так что я могу использовать что-то вроде этого в routs.php?

$ Маршрут [ 'кампус жизнь / кампус-тур'] 'страницы / Campus-Tour / 18/3' =;

чтобы показать этот URL « http://www.example.com/campus-life/campus-tour »

Может кто-нибудь помочь, пожалуйста?

Задан 02/09/2018 в 05:35
источник пользователем
На других языках...                            


3 ответов

голоса
0

Ниже представлен синтаксис для маршрутизации. Пожалуйста, используйте это:

$ Маршрут [ 'страница / Campus-Tour / (: любой) / (: любой)'] = 'страница / кампус-тур / $ 1 / $ 2';

Ответил 11/10/2018 в 05:09
источник пользователем

голоса
0

FYI: Правильное имя функции начинается с буквы или подчеркивания , а затем любое количество букв, цифр или символов подчеркивания.


Если передать URL данных с этим в pages/Campus-Tour/18/3этом campus-life/campus-tourон явно не хватает вашего параметра URL , как вы можете видеть.

Что вы можете сделать , это <form>представить с POSTи в функции, вы можете поймать их.

Ввиду

<form action ="campus-life/campus-tour" method ="post">
    <input type="hidden" name="first_param" value = "18"/>
    <input type="hidden" name="second_param" value = "3"/>
    <input type="submit"> # make this a No button. Should looks like <a> tag. Use CSS. (check Link)
</form>

В контроллере

function Name() #add valid function/controller name
{
    # catch the POST values
}

Справка: Как сделать кнопку выглядеть ссылка?

Ответил 02/09/2018 в 12:59
источник пользователем

голоса
0

Пожалуйста, используйте этот синтаксис для маршрутизации.

$route['string-that-you-want-to-show-in-url'] = 'controller/function/arg1/arg2';

Пример --

$route['campus-life/campus-tour'] = 'pages/campus_tour/$1/$2';

Примечание: - PHP не поддерживает дефис (-) внутри имя функции, имя функции (Campus-Tour) является недействительным, пожалуйста, проверьте его и использовать выше синтаксис.

Ответил 02/09/2018 в 07:26
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more