не могу прочитать значение массива флажков после отправки формы - PullRequest
0 голосов
/ 27 апреля 2011

Я не знаю, что мне здесь не хватает, но я пытаюсь создать действительно простую форму с чекбоксом, вот HTML:

(...)
    <input type="checkbox" name="test[]" value="js"> Javascript <br>
    <input type="checkbox" name="test[]" value="php">  PHP <br>
    <input type="checkbox" name="test[]" value="sql">  SQL <br>
    <input type="checkbox" name="test[]" value="html">  HTML <br>
(...)

, а вот фрагмент php, который предполагаетсправиться с этим:

<code>    echo '<pre>';
    print_r($_POST['test']);
    echo '
';print_r ($ _ POST) echo '
';

здесь вывод

Array
Array
(     
    [stuff1] => 0
    [stuff2] => 5
    [stuff3] => 2
    [test] => Array        
)

Другие входные данные форм хорошо отображаются, но я не могу разобрать содержимое массива, который является просто строкой образца с именем "массив "...

Если я попытаюсь сделать

var_dump($_POST["test"]); //this is what I get: string 'Array' (length=5)

Ответы [ 2 ]

1 голос
/ 27 апреля 2011

Существует хорошее руководство о том, как обрабатывать флажки с помощью php: http://www.html -form-guide.com / php-form / php-form-checkbox.html

В основномваш $_POST['test'] является массивом, который пуст, если флажок не установлен.И это будет похоже на ["js","php"], если пользователь выберет js и php.

Если вы хотите переключиться между всеми выбранными вариантами, вы можете сделать:

foreach ($it in $_POST['test']) {
   echo $it
}
0 голосов
/ 28 апреля 2011

Я нашел это, причина в том, что я использую старую платформу, которая делает странное утверждение внутри или без активированного magic_quotes, у меня активирован magic_quotes, поэтому он экранирует любой массив, содержащийся в переменных $ _POST ...

foreach ($_POST as $key => $value) {
    if ($value && !$is_magic_quotes_gpc) {
        $_POST["$key"] = addslashes($value);
    }
}

Я просто удалил этот фрагмент, и все прошло хорошо

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