Переменная $_POSTзаполняется автоматически.
Попробуйте var_dump($_POST);посмотреть содержимое.
Вы можете получить доступ к отдельным значениям следующим образом: echo $_POST["name"];
Это, конечно, предполагает, что ваша форма использует типичную кодировку формы (т.е. enctype=”multipart/form-data”
Если данные вашего сообщения находятся в другом формате (например, JSON или XML, вы можете сделать что-то вроде этого:
$post = file_get_contents('php://input');
и $postбудет содержать необработанные данные.
Предполагая, что вы используете стандартную $_POSTпеременную, вы можете проверить, установлен ли флажок следующим образом:
if(isset($_POST['myCheckbox']) && $_POST['myCheckbox'] == 'Yes')
{
...
}
Если у вас есть массив флажков (например,
<form action="myscript.php" method="post">
<input type="checkbox" name="myCheckbox[]" value="A" />val1<br />
<input type="checkbox" name="myCheckbox[]" value="B" />val2<br />
<input type="checkbox" name="myCheckbox[]" value="C" />val3<br />
<input type="checkbox" name="myCheckbox[]" value="D" />val4<br />
<input type="checkbox" name="myCheckbox[]" value="E" />val5
<input type="submit" name="Submit" value="Submit" />
</form>
Использование [ ]в названии флажка означает, что выбранные значения будут доступны для PHP-скрипта в виде массива. В этом случае $_POST['myCheckbox']не будет возвращена одна строка, а будет возвращен массив, состоящий из всех значений отмеченных флажков.
Например, если я проверил все ящики, $_POST['myCheckbox']будет массив , состоящий из: {A, B, C, D, E}. Вот пример того, как получить массив значений и отобразить их:
$myboxes = $_POST['myCheckbox'];
if(empty($myboxes))
{
echo("You didn't select any boxes.");
}
else
{
$i = count($myboxes);
echo("You selected $i box(es): <br>");
for($j = 0; $j < $i; $j++)
{
echo $myboxes[$j] . "<br>";
}
}