【发布时间】:2013-07-16 02:19:19
【问题描述】:
$count = count(array_filter($_POST["materials"]));
for($I = 0; $I < $count; $i++)
{
$insert = mysqli_query($con, "INSERT INTO table1 (uid, materials, num, cost)
VALUES
(
'$_POST[uid]',
'$_POST[material][$i]',
'$_POST[num][$i]',
'$_POST[cost][$i]',
)");
}
如果我使用 echo $_post[materials][$i],它会给我正确的结果,但在数据库中它会插入类似 array[0] 的东西。
看来我的$insert 不对。但我没有任何想法插入它。关于如何做到这一点的任何想法?
【问题讨论】:
-
echo您的查询以查看替换变量的确切原始 mysql 查询。 -
你的表单是什么样子的
-
有3种形式的材料,数量,成本。他们每个人都乘了 5 倍。
-
一个建议(可能您正在关注它):请在插入数据库之前清理并验证您的输入。
-
尝试将
$_POST[material][$i]更改为$_POST['materials'][$i]