Php 从表单获取post中的数组
我有一个使用复选框的表单,它从mysql数据库获取所有数据。所以可以有1到无限的复选框 我需要在提交表单时检查每个表单 如果全部选中,则它可以工作,但如果只选中了少数,则它要么不显示,要么只显示其中一个 下面是我用来显示带有数据的复选框的代码:Php 从表单获取post中的数组,php,arrays,Php,Arrays,我有一个使用复选框的表单,它从mysql数据库获取所有数据。所以可以有1到无限的复选框 我需要在提交表单时检查每个表单 如果全部选中,则它可以工作,但如果只选中了少数,则它要么不显示,要么只显示其中一个 下面是我用来显示带有数据的复选框的代码: while ($myrow = mysqli_fetch_array($result)){ echo<<<END <input type="checkbox" id="units" name="unit[$i]" value="$
while ($myrow = mysqli_fetch_array($result)){
echo<<<END
<input type="checkbox" id="units" name="unit[$i]" value="$myrow[unit_id]" /> $myrow[unit_id]<br />
END;
$i++;
}//end while
以下是我在提交表单时使用的代码:
$i=0;
while($_POST["unit"][$i] != ""){
$unit = $_POST["unit"][$i];
$unit = $res2->real_escape_string($unit);
echo $unit."<br />";
$i++;
} // end while
我相信问题在于,我有while$_POST[unit[$1]!=并且如果选中一个框,然后选中另一个2或3向下的框,它会看到第二个框为空并停止
如果是这样的话,我需要帮助来找出如何使它在所有这些文件中运行,并打印出已检查的文件。请记住,可能有1到无限多个已检查文件,因此它不能像while$I那样是一个固定的数字,如果$I不重要,您应该使用: 名称=单位[] 然后在foreach循环中检索值
对于每个$u请求['unit']作为$unit…如果$i不重要,您应该使用: 名称=单位[] 然后在foreach循环中检索值
前述$$请求[单位]…< /p> < p>复选框只在被检查时发送。而循环由一个由$$POST([Ung])[$i]表示的复选框停止,所以其余的永远不会得到评价。
foreach($_POST["unit"] as $unit) {
echo $unit . "<br />";
}
如果钥匙很重要:
foreach($_POST["unit"] as $key => $unit) {
echo $key . " is " . $unit . "<br />";
}
复选框只在被检查时发送,而当一个由$$POST([Ung])[$i]表示的复选框不被设置时,循环停止,因此其余的永远不会得到评价。
foreach($_POST["unit"] as $unit) {
echo $unit . "<br />";
}
如果钥匙很重要:
foreach($_POST["unit"] as $key => $unit) {
echo $key . " is " . $unit . "<br />";
}
另外,你的html不好,不能有重复的id字段。你可以删除id=UnitsAllso,你的html不好,不能有重复的id字段。你可以删除id=Units谢谢你,工作得很好。当stackoverflow让我等待5分钟的时间结束时,我会给你绿色支票。哈哈,非常感谢你,工作顺利很好。我会给绿色检查时,5分钟stackoverflow让我等待了lol。