$ _POST не устанавливается - PullRequest
2 голосов
/ 02 мая 2011

Кто-нибудь знает, почему $_POST не устанавливается ??

Вот часть кода.

<form method="post" name="form" id="clientForm" action="">
<input type="submit" name="sub" value="Delete_Checked"/>
<?php if ($i%2){ ?> class="even"<?php } ?>
<input type="checkbox" name="doc[]" value="<?php echo $document->doID; ?>"/>
<?php $i++; } ?>
</form>
<?php
if (isset($_POST['sub']) == 'Delete_Checked'){
print_r($_POST['sub']); // nothing gets print.
......
}
?>

Я должен что-то пропустить.

Ответы [ 3 ]

4 голосов
/ 02 мая 2011

Если флажок не установлен при отправке, он не будет в массиве $ _POST.

$ _ Сам POST всегда установлен.Попробуйте вместо этого, когда вам нужно увидеть все, что в нем содержится:

print_r($_POST);

Убедитесь, что вы также используете "post" в качестве метода формы.

Кроме того, вы, похоже, пытаетесьдоступ к $_POST['sub'], когда ваш код показывает только ввод 'doc [] `.

2 голосов
/ 02 мая 2011
if (isset($_POST['sub']) == 'Delete_Checked'){

Это не так, как это должно быть написано.Это сработает только случайно.

Автор хотел написать:

if (isset($_POST['sub']) && ($_POST['sub'] == 'Delete_Checked')) {

Я бы лично пропустил всю isset часть, потому что это именно то, что мешает вашей оценкепричина.

1 голос
/ 02 мая 2011

этот ввод должен быть внутри формы с методом POST <pre><code><form action="...." method="POST"> <input type="submit" name="sub" value="Delete_Checked"/> </form>

попытаться поместить действие в <code>action="<?php echo $_SERVER['PHP_SELF'];?>"

...