Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将复选框值存储在数组中并在mysqli查询中使用_Php_Html_Mysql_Sql_Mysqli - Fatal编程技术网

Php 将复选框值存储在数组中并在mysqli查询中使用

Php 将复选框值存储在数组中并在mysqli查询中使用,php,html,mysql,sql,mysqli,Php,Html,Mysql,Sql,Mysqli,我目前正在尝试使用php和mysqli,但现在面临一个小问题。 我有一个包含3个复选框的表单,用户可以在其中选择一个必填字段。因此,数据库包含3个属性(二进制;0,1)。数据集可以包含这些属性中的0到3个 以下是复选框: <form method="post" action="handler.php"> <input type="hidden" name="attribute1" value="0" /> <input type="checkbox" name="a

我目前正在尝试使用php和mysqli,但现在面临一个小问题。 我有一个包含3个复选框的表单,用户可以在其中选择一个必填字段。因此,数据库包含3个属性(二进制;0,1)。数据集可以包含这些属性中的0到3个

以下是复选框:

<form method="post" action="handler.php">
<input type="hidden" name="attribute1" value="0" />
<input type="checkbox" name="attribute1" value="1" /> Attribute1 <br/>
<input type="hidden" name="attribute2" value="0" />
<input type="checkbox" name="attribute2" value="1" /> Attribute2 <br/>
<input type="hidden" name="attribute3" value="0" />
<input type="checkbox" name="attribute3" value="1" /> Attribute3 <br/><br/>
<input type="submit" value="Submit">
</form>
作为一种解决方案,我考虑了如下查询:

... WHERE " . $array ."
不幸的是,我被困在这一点上,用数组解决它的正确方法是什么?或者这是错误的想法


谢谢你的帮助

这没有多大意义,除非您要添加几十个/数百个复选框。。。与仅定义3个变量相比,您在编写代码以分解/构建数组和字符串方面花费了更多的时间。。。如前所述,您很容易受到如何定义变量的影响?我尝试了一个if循环来检查这个框是否被选中,否则变量将不会被设置。检查所有3个框的状态后,变量将内爆为一个字符串,用于查询。不幸的是,它也不起作用。那么你有没有一个可以解决这个问题的代码示例?我昨天已经注意到您对sql注入的推荐,我会处理它,所以我稍后会处理它,但我想先得到一个工作查询。那么你有没有一个代码建议?考虑到您的字段名是一致的,因此($i=1;$i)的
谢谢Marc B的帮助,这对我帮助很大,现在查询工作非常出色!当整个表单完成后,我将安全地对其进行返工!问候
... WHERE " . $array ."