php判断checkbox是不是为空

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php判断checkbox是不是为空相关的知识,希望对你有一定的参考价值。

我现在要做一个用户选择爱好的表单提交,可以有爱好,也可以没有。爱好使用checkbox来做的,但是提交表单之后,如果用户没有选择爱好就报错了,选择了就正常。我想问下php怎么判断提交过来的表单里的checkbox是否有选中项呢??因为我的业务需求是选中与未选中要做不同的业务处理。我原先在jsp中做的时候就判断一下request中checkbox的name里的内容是否为null就行了~~但是我在php里这样貌似行不通,只要checkbox未被选中我做什么都是错的~~~~~

要有个属性叫做 value=""    这个是值的意思。

实例:

<?php
print_r($_POST);
?>
<form accept="#" method="post">
<h1>告诉我,你有什么手机?</h1>
苹果:<input name="model[]" type="checkbox" value="苹果" />
安卓:<input name="model[]" type="checkbox" value="安卓" />
<input type="submit" value="确定">
</form>

记得加 [  ] ,代表他是一个多选,将用数组的形式给你传递值

来自:求助得到的回答
参考技术A checkbox是个复选框,选中的话肯定会有值的但如果是多个就必须要把复选框名子搞成数组形式PHP才能获取到选中的值比如<input type="checkbox" name="name[]" value="1">

<input type="checkbox" name="name[]" value="1">

这样POST['name']上来的是一个数组,你print_r一下就知道了。
参考技术B checkbox PHP接受的是一个数组 只要判断数组是否为空就可以知道有没有选中了
if(!is_array($_POST['love']))
//没有选中
参考技术C

参考技术D >>只要checkbox未被选中我做什么都是错的~~~~~
是什么样的错误呢???
php中checkbox的值是以数组的形式传递的,参考下面代码,看看对你会不会有帮助。
JSP:
<input type="checkbox" name="like[]" value="篮球">
<input type="checkbox" name="like[]" value="足球">
PHP:
<?php
IF(!empty($_POST["like"]))
echo "选择了爱好";
else
echo "没有选择爱好";

?>本回答被提问者和网友采纳

如何判断所有的checkbox中是不是有选中的?

参考技术A 事实上
这个判断很奇怪
我也是摸索了半天才发现了
逻辑就是
首先判断这个checkbox是否有值,也就是判断是否等于null
如果等于null
那就肯定为空
如果不等于null
然后再获取他的value值,可以强制转换为bool,当然也可以不强制转换
具体代码为
list
arr
=
new
list
();
for
(int
i
=
0;
i
<
datagridview1.rows.count;
i++)

if
(datagridview1.rows[i].cells["列名"].value
!=
null)

if
((bool)datagridview1.rows[i].cells["列名"].value)

arr.add((string)datagridview1.rows[i].cells["列名"].value);


以上是关于php判断checkbox是不是为空的主要内容,如果未能解决你的问题,请参考以下文章

JSJQ中判断checkbox是否选中

java 点击按钮判断checkbox选择是不是为空,为空跳出提示框并返回之前页面,不为空进行下一步

判断checkbox是不是被选中

如何判断所有的checkbox中是不是有选中的?

checkbox判断不为空

CheckBox多选取值及判断CheckBox选中是否为空