Как установить переключатель CodeIgniter, прежде чем он будет в $ _POST?

#php #codeigniter

#php #codeigniter

Вопрос:

Итак, в помощнике формы CodeIgniter (https://www.codeigniter.com/userguide3/helpers/form_helper.html ) у вас есть эта функция:

set_radio()

Позволяет отображать переключатели в том состоянии, в котором они были отправлены. Эта функция идентична функции set_checkbox() выше.

 <input type="radio" name="myradio" value="1" <?php echo set_radio('myradio', '1', TRUE); ?> />
<input type="radio" name="myradio" value="2" <?php echo set_radio('myradio', '2'); ?> />
  

Проблема в том, что у меня уже есть информация, ПРЕЖДЕ чем я представлю форму. Насколько я понимаю, эта set_radio() функция использует данные в действии POST для установки значения, когда проверка формы завершается неудачей, и ее необходимо переделать.

Имеет ли это смысл?

Итак, если я еще не сделал первый POST, у set_radio() нет никаких данных, которые можно было бы использовать для предварительной настройки переключателя.

Ответ №1:

Вы всегда можете изменить $_POST переменную, вот так:

 if (!isset($_POST['myradio'])) {
    $_POST['myradio'] = $myDefaultValue;
} 
  

Сделайте это перед началом работы с form helper, и все должно быть в порядке.