我有一个奇怪的查询。该复选框是在一个while循环,它正确地列出了它需要的一切:PHP数组变量传递错误
<input type='checkbox' name='rep[]' value='$invoiceID'>Reference Number: $invoiceID
<input type='hidden' name='billablehours[]' value='$billableTotal'>
当表单提交的值插入使用的数据库:
foreach ($_POST['rep'] as $index => $id) {
$sql2="INSERT into b_sale_basket (QUANTITY,LID,NAME)
VALUES
('".$_POST['billablehours'][$index]."','s1','".$_POST['rep'][$index]."')";
if (!mysqli_query($con,$sql2))
{
die('Error: ' . mysqli_error($con));
}
}
它插入一切,因为它应该做的除了billablehours。我在表单页上的每个复选框上输出了$ billableTotal的值,并且该值是正确的。例如,它可能等于25,但当按钮被按下时,它输入37.5,这是复选框的另一个值。
奇怪。任何人都可以找出问题吗?
只有选中的复选框被提交。所以如果你只检查一个,那么'rep'数组只有一个元素'0',但'billablehours'数组的数量将与页面上定义的数量一样多。 – AbraCadaver