Маршрутизация Codeigniter конфликтует с нумерацией страниц и другим URL-адресом

Маршрутизация CodeIgniter конфликтует с нумерацией страниц и другим URL-адресом. На самом деле, я пытаюсь загрузить следующий URL-адрес при нумерации страниц.

http://127.0.0.1/Mytredin_codesup/snippets

И для своего поста я хочу загрузить следующий URL

http://127.0.0.1/Mytredin_codesup/snippets/auto-loader-63152391

Но одновременно работает только один URL.

Я использую следующую маршрутизацию

$route['snippets/(:any)'] = 'snippets/view/$1';
$route['allsnippets/(:num)'] = 'welcome';
$route['snippets/(:num)'] = 'snippets';

Вы пробовали удалить третью маршрутизацию и проверить?

A J 10.04.2019 12:28

показывает, что страница не найдена, когда я использую разбиение на страницы

Upasana Chauhan 10.04.2019 12:29

на самом деле я хочу использовать оба URL-адреса (вышеупомянутые) на одном и том же маршруте...

Upasana Chauhan 10.04.2019 12:31

Вы имеете в виду, что хотите, чтобы оба URL-адреса были направлены на одну и ту же функцию? Другими словами, функция просмотра в контроллере фрагментов?

A J 10.04.2019 12:33

$route['snippets/(:num)'] = 'snippets'; это загрузит индексную функцию и $route['snippets/(:any)'] = 'snippets/view/$1'; это загрузит функцию просмотра класса фрагментов

Upasana Chauhan 10.04.2019 12:37

Вам нужен номер страницы в вашей функции для третьей маршрутизации?

A J 10.04.2019 12:38

да, это то, что я хочу на этом маршруте $route['snippets/(:num)'] = 'snippets'; с пагинацией для работы

Upasana Chauhan 10.04.2019 12:39
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
7
43
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Do you want the page number in your function for third routing?

yes that is what i want on this route

Итак, попробуйте изменить третье правило маршрутизации на

$route['snippets/(:num)'] = 'snippets/index/$1';

и ваша функция в контроллере snippets

function index(page_no){
    //your code here
}

Редактировать:

Сохраняйте правила маршрутизации в этом порядке.

$route['snippets/(:num)'] = 'snippets/index/$1';
$route['snippets/(:any)'] = 'snippets/view/$1';
$route['allsnippets/(:num)'] = 'welcome';

Проблема заключается в использовании any перед num, что any примет любой символ, кроме /, и не попадет в num маршрутизацию. Таким образом, изменение порядка маршрутизации будет работать.

Теперь $route['snippets/(:any)'] = 'snippets/view/$1'; прекратить работу

Upasana Chauhan 10.04.2019 12:46

Попробуйте изменить порядок маршрутов или используйте регулярное выражение вместо any

A J 10.04.2019 12:46

Я снова застрял!! Что мне теперь делать?

Upasana Chauhan 10.04.2019 12:48

этот 127.0.0.1/Mytredin_codesup/фрагменты/автозагрузчик-63152391 сейчас не работает

Upasana Chauhan 10.04.2019 12:49

Будет ли этот URL всегда содержать символы и цифры, соединенные дефисом?

A J 10.04.2019 12:50

классно!! Спасибо !! последний вопрос, могу ли я получить такой URL-адрес для разбивки на страницы - 127.0.0.1/Mytredin_codesup/snippets&page=1

Upasana Chauhan 10.04.2019 13:06

Да, но он будет перенаправлен на вашу индексную функцию в контроллере snippets, и вам нужно будет получить page с помощью $this->input->get('page');

A J 10.04.2019 13:09

Другие вопросы по теме