CodeIgniter: получение данных из массива форм в массив записей - PullRequest
2 голосов
/ 07 ноября 2010

Я ломаю голову. Я использую CodeIgniter, пытаюсь получить значение из флажка формы в массив данных для отправки в базу данных. Вот фрагменты:

Форма (просмотр):

<label>Rental Car?</label><input type="checkbox" name="options[is_rental]" value="1" <?php echo set_checkbox('options[is_rental]', '1', FALSE); ?> />

Контроллер:

$data['is_rental'] = $this->input->post('options[is_rental]');

Теперь, во время этого процесса я также проверяю и заново заполняю форму данными, используя опции [is_rental], и это прекрасно работает. Используя var_dump я получаю:

Дампы (с установленным флажком) с контроллера:

var_dump($this->input->post('options[is_rental]'))

Возвращает

bool(false)

и ...

var_dump($this->input->post('options'))

Возвращает

array(3) { ["engine"]=> string(4) "4cyl" ["transmission"]=> string(9) "automatic" ["is_rental"]=> string(1) "1" }

Во всяком случае, я не могу получить и другие значения в массиве.

Ответы [ 2 ]

8 голосов
/ 07 ноября 2010

Почему бы просто не сделать:

$ data = $ this-> input-> post ('options');

Тогда $ data ['is_rental'] должен == 1

0 голосов
/ 09 ноября 2010

Я заметил то же самое с CodeIgniter. Если вы передаете индекс правилу проверки формы, он работает нормально, но для переноса данных в другую переменную необходимо сначала поместить массив post во временную переменную, а затем получить доступ к этому индексу. Вы не можете получить доступ к индексам в массиве POST, используя $ this-> input-> post

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