Проверка CodeIgniter: возможно ли проверить строки запроса GET?

Библиотека проверки формы работает только на POST. Мне нужно использовать строки запроса и хотел бы использовать CI для проверки переданных значений. Есть ли способ сделать это

 Rocket Hazmat04 июн. 2012 г., 17:39
Вы можете заставить CodeIgniter думать, что это было из POST, хотя это не так.$_POST = $_GET, может быть
 Esailija04 июн. 2012 г., 17:46
lol, весь класс жестко запрограммирован$_POST. Так что, если вы полностью не переопределите это, то нет.
 Thomas Decaux28 июл. 2014 г., 13:49
Смотри мой ответ на / Stackoverflow.com вопросы / 10524992 / ...

Ответы на вопрос(4)

запущенную в MY_Form_Validation, и изменить ее.

Решение Вопроса

Текущая ветка разработки Codeigniter 3.0 предоставляет возможность вставить собственную переменную вместо $ _POST. Таким образом, вы можете начать использовать 3.0.

В качестве альтернативы, единственный способ в CI2.1 - это сделать $ _POST = $ _ GET перед запуском проверки.

 Zorgarath01 мая 2015 г., 01:00
Я пробовал $ _POST = $ GET, но validation-> run () по-прежнему возвращает FALSE
 maxime199202 мая 2016 г., 21:13
@ NicolasThery прости, это было давно, я точно не помню. Я думаю, что просто придерживаюсь этого, даже если это не было лучшим решением очевидно!
 maxime199231 янв. 2015 г., 19:22
Не могли бы вы предоставить "опцию для вставки своей переменной вместо $ _POST"? Потому что я перехожу на CI 3.0, и все мои form_validation работают хорошо, кроме одного. Я получаю значения GET и хочу проверить их ... Я не знаю, как это сделать, спасибо!
 maxime199231 янв. 2015 г., 19:30
Я только что выяснил, в чем проблема ... !!! В CI 3.0 они добавляют небольшую проверку. Перейдите в system / librairies / Form_validation.php. Найдите функцию set_rules и удалите строку: if ($ this-> CI-> input-> method ()! == 'post' && empty ($ this-> validation_data)) {return $ this; }
 Laurence01 мая 2015 г., 04:33
Тебе нужно сделать$_GET не$GET

http: //www.codeigniter.com/userguide3/libraries/form_validation.html#validating-an-array-other-than-pos

Для CodeIgniter 2 вы можете сделать $ _POST = $ _GET; перед $ this-> form_validation-> run (), как указано выше.

Как проверить поле формы в Codeigniter при использовании параметров Get?

Перед правилами проверки установите данные проверки с помощью следующего кода.

 $this->form_validation->set_data($_GET);

Ваш ответ на вопрос