数量是一个项目数组
<td>
<input type="text" size="4" name="qty[<?php echo $pro_id;?>]"style="text-
align:center" value="<?php echo $_SESSION['qty']; ?>">
</td>
<?php
更新功能完美无缺
if(isset($_POST['update'])) {
$ip=getIp();
$sql = "UPDATE cart SET qty=? where p_id=? and ip_add=?";
$stmt = mysqli_prepare($con, $sql);
foreach ($_POST['qty'] as $pro_id=>$qty) {
$stmt->bind_param("iis", $qty, $pro_id, $ip);
$stmt->execute();
}
}
这是我用来显示新数量的内容,但值显示在错误的产品字段
中$sql = $con->query("select * from cart where p_id='$pro_id'");
$row=$sql->fetch_array(MYSQLI_BOTH);
$_SESSION['qty']=$row['qty'];
?>
更新购物车的按钮
<td><input type="submit" name="update" value="Update quantity"></td>
<td><button style="height:20px;width:128px">
<a href="index.php"style="color:black">Continue Shopping</a></button></td>
<td><button><a href="checkout.php" style="color:black">Checkout</a></button>
</td>
</table>
答案 0 :(得分:0)
当数量是数组并且数据库中的数据是正确的时,您需要SESSION数量作为数组!
试试这个:
$sql = $con->query("select * from cart where p_id='$pro_id'");
$row=$sql->fetch_array(MYSQLI_BOTH);
$_SESSION[$pro_id]['qty']=$row['qty'];
和这个
<td>
<input type="text" size="4" name="qty[<?php echo $pro_id;?>]"style="text-
align:center" value="<?php echo $_SESSION[$pro_id]['qty']; ?>">
</td>
<?php