我在 php 中有一个显示复选框的表单。这些复选框与从 mysql 填充的数值相关联。我要做的是添加每个复选框的值,但前提是选中该框。
我遇到的问题是无论我检查了哪些框,都会返回第一个复选框的值。例如,如果总共有 5 个复选框并且我选择了底部的 2 个,则返回的总和是顶部的 2 个框而不是底部的框。似乎我的 php 代码知道正在检查框,但不知道正在检查哪些框。
这是我的表单代码
echo "<input type=\"hidden\" name=\"ID[]\" value=\"".$row['ID']."\" />";
echo "<tr><td> <input type=\"checkbox\" name=\"checked[]\" value=\"Y\"></td>";
echo "<input type=\"hidden\" name=\"amount[]\" value=\"".$row['amount']."\" />";
这是我的帖子
if('POST' == $_SERVER['REQUEST_METHOD']) {
$amt = 0;
$totamt = 0;
foreach($_POST['ID'] as $i => $id)
{
$id = mysql_real_escape_string($id);
$checked = mysql_real_escape_string($_POST['checked'][$i]);
$amt = mysql_real_escape_string($_POST['amount'][$i]);
if ($checked == "Y") {
$totamt = $totamt + $amt;
$amt = 0;
}
}
echo $totamt;
}
感谢您的帮助。