有没有人知道为什么$_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.
......
}
?>
我必须忽视某些事情。
答案 0 :(得分:4)
如果在提交时未选中该复选框,则它将不在$ _POST数组中。
始终设置$ _ POST本身。当您需要查看其中包含的所有内容时,请尝试此操作:
print_r($_POST);
确保您也使用“post”作为表单方法。
此外,当您的代码仅显示'doc []`输入时,您似乎正在尝试访问$_POST['sub']
。
答案 1 :(得分:2)
if (isset($_POST['sub']) == 'Delete_Checked'){
这不是应该如何写的。它只会偶然发挥作用。
作者想写的是:
if (isset($_POST['sub']) && ($_POST['sub'] == 'Delete_Checked')) {
我个人会遗漏整个isset
部分,因为这正是阻碍你对事业进行评估的因素。
答案 2 :(得分:1)
输入应该是方法POST的内部形式
<form action="...." method="POST">
<input type="submit" name="sub" value="Delete_Checked"/>
</form>
尝试将操作设置为<form action="...." method="POST">
<input type="submit" name="sub" value="Delete_Checked"/>
</form>