作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个 HTML 表单:
<form action='process.php' method='post'>
<input type='checkbox' name='check_box_1' /> Check me!<br>
</form>
这是 PHP 脚本 process.php
的一部分:
echo (isset($_POST['check_box_1']))?'Set':'Not set';
设置复选框时脚本的输出是
Set
但是当未设置复选框时,输出为:
Not set
这是为什么?这似乎是一个非常糟糕的设计,因为我的 PHP 脚本会检查许多 $_POST
变量以确保将它们传递给脚本。当 $_POST['check_box_1']
值未设置时,我如何知道脚本是否未能传递值或复选框未设置?
最佳答案
如果你想克服这个设计特点,试试这个:
<input type="hidden" name="check_box_1" value="0" />
<input type="checkbox" name="check_box_1" value="1" />
这样,您将始终在回调页面中设置$_POST['check_box_1']
,然后您可以检查它的值以查看他们是否检查了它。不过,这两个输入必须按此顺序排列,因为后一个输入优先。
关于php - 为什么复选框状态并不总是传递给 PHP 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2520952/
我是一名优秀的程序员,十分优秀!