PHP foreach循环插入数据库

PHP foreach循环插入数据库,php,mysql,forms,foreach,checkbox,Php,Mysql,Forms,Foreach,Checkbox,我试图使用php将选中的复选框值插入mysql数据库。我只是不明白为什么它不工作,因为它可以很好地回显所有值,但它只会将第一个选定的值插入数据库 HTML: 可能该列有一个主索引,这意味着所有数字都必须是唯一的,因此只插入第一个值。print\r($\u POST)数据是否符合您的预期?1。不要使用mysql驱动程序,而是使用PDO。这可以防止SQL注入;我还可以看出,您并没有逃避您发布的值。2.可能该列有一个主索引,这意味着所有数字都必须是唯一的,因此只插入第一个值。。它们不再得到维护。看到了

我试图使用php将选中的复选框值插入mysql数据库。我只是不明白为什么它不工作,因为它可以很好地回显所有值,但它只会将第一个选定的值插入数据库

HTML:


可能该列有一个主索引,这意味着所有数字都必须是唯一的,因此只插入第一个值。

print\r($\u POST)数据是否符合您的预期?1。不要使用mysql驱动程序,而是使用PDO。这可以防止SQL注入;我还可以看出,您并没有逃避您发布的值。2.可能该列有一个主索引,这意味着所有数字都必须是唯一的,因此只插入第一个值。。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO。(同样,正如silkfire所说,你在这里也容易受到攻击。)你的代码容易受到SQL注入攻击,简要介绍了它们是什么以及如何防止它们。停止“垃圾邮件”停止使用mysql_*
<b>Injury type:</b>
Bruise <input type='checkbox' name='InjuryType[]' value='1'><br>
Cut <input type='checkbox' name='InjuryType[]' value='2'><br>
Graze <input type='checkbox' name='InjuryType[]' value='3'><br>
Break <input type='checkbox' name='InjuryType[]' value='4'><br>
Bump <input type='checkbox' name='InjuryType[]' value='5'><br>
foreach($_POST['InjuryType'] as $value) {
$insert = mysql_query("INSERT INTO AccidentInjuryLink(InjuryID) VALUES ('$value')");
echo $value; 
}