Проблема маршрутизации CodeIgniter при использовании: любая - PullRequest
0 голосов
/ 19 января 2011

У меня проблемы с маршрутизацией в коде воспламенителя.Хотя у меня все работает.

$route['user/authorize'] = "user/asdf";

Эта фиктивная строка работает нормально.Это не так:

$route['user/authorize?code=:any'] = "user/asdf";

и особенно

$route['user/authorize?code=:any'] = "user/authorize/$1";

Я уже изменил переменную $config['permitted_uri_chars'] на пустую строку (разрешить все).

I 'Мы также пытались использовать (: любой) с скобками.Я предположил, что это была опечатка в руководстве, так как (: num) также использует скобки.Безрезультатно.

У меня нет идей.Кто-нибудь?

Кстати, переменная кода является токеном доступа Facebook и выглядит примерно так:

2.TOCElrzcR5MYz_J8O67hWA__.3600.1295467200-17044424246|4FPbz0N-pXqGWYR81PWGPTY06A4

Не уверен, что это актуально, мой файл .htacces:

RewriteEngine on
RewriteCond $1 !^(index\.php|css|images)
RewriteRule ^(.*)$ /website/index.php/$1 [L]

Ответы [ 3 ]

1 голос
/ 19 января 2011

Поскольку структура Codeigniter:

Контроллер / Метод / Параметры

Я предполагаю, что:

Пользователь / авторизация

- это ваш контроллер / метод.

Теперь

$ route ['user / authorize? Code =: any'] = "user / asdf";

Должно быть:

$ route ['user / authorize /: any'] = "user / asdf";

, где

функция authorize ($ code = null) { код echo $; } * * Тысяча двадцать-один

будет выводить так же, как

function authorize(){ $code = $_GET['code']; }

Итак, oldskool php вы пишете: ninja.php? Code = что-то

в CI - третий сегмент.


/ пользователь / разрешить / TOCElrzcR5MYz_J8O67hWA __ 3600.1295467200-17044424246 |. 4FPbz0N-pXqGWYR81PWGPTY06A4

равно

ninja.php код = TOCElrzcR5MYz_J8O67hWA __ 3600.1295467200-17044424246 |?. 4FPbz0N-pXqGWYR81PWGPTY06A4

как объяснено в начале.

0 голосов
/ 20 января 2011
$config['uri_protocol'] = "PATH_INFO";

Оставьте все остальное по умолчанию.

0 голосов
/ 19 января 2011

Полагаю, вам нужно добавить следующие строки в вашу конфигурацию:

$config['enable_query_strings'] = TRUE;
$config['uri_protocol'] = "QUERY_STRING";

Источник

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...