我从数据库中获取不同的记录,但是使用单个数量字段尝试将多个记录插入到MYSQL中,但每次循环或任何其他循环覆盖所有行中的单个值(在每个字段中插入单个第一个值),严重卡住。请建议采取何种适当的措施。
-D
答案 0 :(得分:0)
你的问题"目前还不清楚。我读过几次,但我还不知道你的问题是什么。
反正。我将尝试解释您的代码所做的事情,以防它帮助您了解问题所在。
//if form was submited and input of name "update" was in
if(isset($_POST["update"])) {
// count array created by inputs of name="qty[]"
$usersCount=count($_POST['qty']);
// make a string from that array, separating the keys by a "," char
$qtys=implode(",",$_POST['qty']);
// loop as many times as number of elements in that array = <input name="qty[]"> you had in submited form
for($i=0;$i<$usersCount;$i++) {
// and finally, do always the same for each loop repeat
$query="UPDATE cart set qty='".$qtys."' WHERE prodid='$cartid'";
$dbh->query($query);
echo $qtys;
}
}
总而言之,你的循环总是一样 - 每次重复:
`$query="UPDATE cart set qty='".$qtys."' WHERE prodid='$cartid'";`
基本上要做到这一点,你不需要循环。
因为在该查询中,您可以在列qty
等于prodid
something
的值