Передача переменной в индексную функцию через URL - PullRequest
0 голосов
/ 16 марта 2012

Я установил контроллер, называемый ссылками, у меня есть маршруты к нескольким страницам, направленным на этот контроллер, и в этом контроллере у меня есть ряд различных функций для доступа к различным частям страницы с помощью вызовов ajax. Вот пример из моей конфигурации маршрутов:

    $route['games'] = "links";   
    $route['games/ajax_pager'] = "links/ajax_pager";
    $route['games/ajax_dbr/(:any)'] = "links/ajax_dbr/$1";
    $route['games/linkinfo/(:num)'] = "links/linkinfo/$1";
    $route['games/linkobj/(:num)'] = "links/linkobj/$1";
    $route['links'] = "links";
    $route['links/ajax_pager'] = "links/ajax_pager";
    $route['links/ajax_dbr/(:any)'] = "links/ajax_dbr/$1";
    $route['links/linkinfo/(:num)'] = "links/linkinfo/$1";

то, что я хотел бы сделать сейчас - это иметь переменную из второго сегмента URL-адреса, передаваемого в функцию индекса, если она не совпадает ни с одной из функций, перенаправленных в выше. Так что-то вроде этого:

$route['games/(:any)'] = "links/$1";

но это не работает, есть ли способ сделать это без создания новой функции. Надеюсь, что это понятно - пожалуйста, дайте мне знать, если требуется какое-либо разъяснение. Заранее благодарю за любую помощь.

1 Ответ

1 голос
/ 16 марта 2012

Первый сегмент - это контроллер, второй сегмент - это функция, а третий - ваша переменная. Поэтому, если вы хотите отправить переменную в функцию индекса контроллера ссылок, это будет выглядеть так:

$route['games/(:any)'] = "links/index/$1";

Нет, когда кто-то просматривает index.php / games / atestvariable, будет вызвана функция индекса контроллера ссылок с переменной atestvariable.

...