Привет и спасибо за чтение.
Я работаю на CodeIgniter 3 с PHP 7.0 и использую формы с form_helper.
Сначала у меня возникли проблемы с повторным заполнением формы с помощью *Функция 1005 * set_value после использования библиотеки form_validation в моем контроллере.Я использовал set_value в моем form_helper следующим образом:
$my_input = array(
'name' => 'my_name',
'value' => set_value('my_name')
);
echo form_label('Title :');
echo form_textarea($my_input);
Итак, с таким текстом:
she's the chief's lady
Форма была заполнена следующим образом:
she's the chief's lady
Это не большая проблема, потому что, когда я регистрирую эти данные и заполняю поле, в HTML это выдает правильное предложение.
НО, если есть другая ошибка вформа, затем предложение будет записано так:
she's the chief's lady
и теперь мои данные больше не верны.
Итак, я прочитал DOC CodeIgniter и нашел это:
Третий (необязательный) параметр позволяет отключить экранирование HTML от значения в случае, если вам нужно использовать эту функцию в сочетании с ie form_input () и избежать двойного экранирования.
Так здорово, что я решил свою проблему с побегом.Но как насчет инъекции XSS?Эта практика кажется очень опасной, я не понимаю, почему это лучший способ, если я доверяю DOC CodeIgniter (я сделал быстрое тестирование со сценарием оповещения, и безопасность не прошла).Итак:
1) Каков наилучший способ обезопасить себя и избежать побега, когда мне нужно заново заполнить форму ???
2) Единственный человек, который видит злой вклад, этотот, кто написал это, но все еще опасно для моего веб-приложения или нет ???
3) И если нет опасности при повторном заполнении формы отправленными данными, зачем намустановить для параметра выхода значение FALSE в set_value ()?Почему значение по умолчанию не установлено в FALSE?
РЕДАКТИРОВАТЬ: я добавил 2 последних вопроса