php - 从 PHP 中的复选框中检查多个值
问题描述
我有这个表格:
<form action="" method="post">
<input type="checkbox" name="check_list[]" value="0" id="check_list">- 0<br>
<input type="checkbox" name="check_list[]" value="1" id="check_list">- 1<br>
<input type="checkbox" name="check_list[]" value="2" id="check_list">- 2<br>
<input type="checkbox" name="check_list[]" value="3" id="check_list">- 3<br>
<input type="checkbox" name="check_list[]" value="4" id="check_list">- 4<br>
<input type="checkbox" name="check_list[]" value="5" id="check_list">- 5<br>
<input type="checkbox" name="check_list[]" value="6" id="check_list">- 6<br>
<input type="checkbox" name="check_list[]" value="7" id="check_list">- 7<br><br>
<input type="submit" name="submit" Value="Submit"/>
</form>
现在我不会检查这个表单的结果,如果结果有(2,3,6)我们需要做一些事情,如果结果有价值(2,3)我们需要做一些事情,如果结果有价值( 2)我们需要做一些事情,如果结果有价值(3)我们需要做一些事情,如果结果有价值(6)我们需要做一些事情,
如何在 php 中做到这一点?
我试试这个,但对我不好
if(!empty($_POST['check_list'])) {
foreach($_POST['check_list'] as $check) {
if ($check =='2' && $check =='3' && $check =='6'){
// do something
} elseif ($check =='2' && $check =='3'){
// do something
} elseif ($check =='6'){
// do something
} elseif ($check =='3'){
// do something
} elseif ($check =='2'){
// do something
}
}
}
我也试试这个,不做任何事情
if(in_array(array(2,3,6),$_POST['check_list'])){
// not work
} elseif(in_array(array(2,3),$_POST['check_list'])){
// not work
} elseif(in_array(array(2),$_POST['check_list'])){
// work
} elseif(in_array(array(3),$_POST['check_list'])){
// work
} elseif(in_array(array(7),$_POST['check_list'])){
// work
}
解决方案
简而言之,当您提交表单时,您将拥有一个$_POST['check_list']
包含您检查过的元素的数组。因此,如果您检查 2、3 和 6 $_POST['check_list'] = [2, 3, 6]
,. 请注意,如果您不选中任何选项,$_POST['check_list']
则将不存在。
然后,例如,如果选中 2,您可以使用它if (in_array(2, $_POST['check_list'])) {...}
来执行您想要的操作。
推荐阅读
- javascript - 运行时打字稿枚举引用错误
- python - Tkinter 中的格式不正确
- sql - 如何根据返回只更新几行?
- python - 在 Python 中绘制颜色字典
- vue.js - 防止组件在 Vite/Vue 3 SSR 组件补水上闪烁
- java - 从 EditText 获取字符串时,无法通过 setter 设置我的类的对象的参数但是当传递硬编码字符串时也可以这样做
- java - hadoop jar 指定配置位置
- flutter - 连续容器之间的空间不起作用
- flutter - 如何使用 HookWidget 而不是 StatefulWidget?
- c# - 如何在 try and catch 块中最好地改进这段代码?