gpt4 book ai didi

php - 更新购物车 - mysql 表更新 - while 循环

转载 作者:行者123 更新时间:2023-11-29 06:12:26 26 4
gpt4 key购买 nike

新人来了!我正在构建一个由 mysql 驱动的自定义购物车,并且我正在尝试逐项更新我的购物车的数量。看来我做错了什么,因为当我尝试更新数量时,它只更新最后一个项目。我发布下面的代码。任何帮助,将不胜感激。提前致谢。

1.cart.php:

    $sql = "select * from orders";
$result = mysql_query($sql);
$num = mysql_num_rows($result);
echo "Στοιχεία: ".$num;
?>
<form name="cart" method="post" action="updatecart.php">
<table border="2">
<tr>
<td>Α/Α</td>
<td>img_name</td>
<td>Reprints</td>
<td>Color</td>
</tr>
<?php
if($num){
while ($row = mysql_fetch_array($result)){
?>
<tr>
<td><?php echo $row['item_id']; ?></td>
<td><?php echo $row['img_name']; ?></td>
<td><input type="number" name="quantity" value="<?php echo $row['quantity']; ?>"></td>
<input type="hidden" name="item_id" value="<? echo $row['item_id']; ?>">
<td><?php echo $row['color']; ?></td>
</tr>
<?php
}
}

?>
</table>
<input type="submit" name="update" value="Update Cart" />
<input type="button" name="2checkout" value="Proceed to Checkout" />
</form>

2.updatecart.php

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<?php
$database_name = "vog";
$conn = mysql_connect("localhost","root","toor");
mysql_select_db($database_name);

$num = 2; //na to ferw me session meta edw!
if(isset($_POST['update'])){
$item_id = $_POST['item_id'];
$i=1;

while($i<=$num){
$item_id = $_POST['item_id'][$i];
$quantity = $_POST['quantity'];
$sql2 = "update orders SET quantity = '$quantity' where item_id = '$item_id' ";
$result2 = mysql_query($sql2) or die ("Error in query: $result2");
$i++;
}
}

if(isset($result2)){
header("Location:cart.php");
}
?>

到目前为止,它只更新最后一条记录。

最佳答案

您的问题在于 HTML 表单中的字段名称:

<input type="number" name="quantity" value="<?php echo $row['quantity']; ?>">
<input type="hidden" name="item_id" value="<? echo $row['item_id']; ?>">

我认为您打算将它们称为 quantity[]item_id[] ,因此它们将在您的 $_POST 中作为数组出现> 稍后变量,现在它们互相覆盖,使得 $_POST['item_id'] 仅包含数据库中的最后一个 id。

关于php - 更新购物车 - mysql 表更新 - while 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8338774/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com