我正在为一个大学项目建立一个虚拟的在线商店。我遇到了一个问题,我无法理解。可以从购物车中添加/删除商品,但如果有人尝试添加购物车中已存在的商品,则不会更新数量。
显示的HTML是显示homepage.php上可以添加到购物车中的项目的代码。
显示的PHP是与“添加”操作一起使用的代码 - 将新项目添加到购物车,或者如果它已经是当前的,它应该将所选数量添加到购物车中已有的数量。后一种功能不起作用。
<div class="laptops"><br />
<img src="<?php echo "img/" . $row["img"] ?>"><br />
<div class="laptopText">
<h3><?php echo $row["brand"] . $row["model"] ?></h3><br />
<p><?php echo $row["cpu_type"] . ", " . $row["cpu_model"] . ", " . $row["OS"] . ", " . $row["RAM"] . ", " . $row["RAM_type"] . ", " . $row["storage"] . ", " . $row["display"] . ", " . $row["gpu"]?></p><br />
<p class="price"><?php echo "£" . $row["price"] ?></p><br />
<div class="itemFormDiv">
<form method="post" action="homepage.php?action=add&id=<?php echo $row["ID"] ?>">
<input class="quantity" name="quantity" type="number" min="1" max="9" value="1">
<input type="hidden" name="hidden_name" value="<?php echo $row["brand"] . $row["model"] ?>">
<input type="hidden" name="hidden_desc" value="<?php echo $row["cpu_type"] . ", " . $row["cpu_model"] . ", " . $row["OS"] . ", " . $row["RAM"] . ", " . $row["RAM_type"] . ", " . $row["storage"] . ", " . $row["display"] . ", " . $row["gpu"]?>">
<input type="hidden" name="hidden_price" value="<?php echo $row["price"] ?>">
<input class="addTooBasket" name="addTooBasket" type="submit" value="Add to Basket">
</form>
</div>
</div>
</div>
(当我将PHP添加到stackoverflow时,它一直阻止我提交问题所以这里它在pastebin) 任何人都可以解决如何解决这个问题吗?
答案 0 :(得分:0)
在foreach之前设置$counter = 0;
,在每个步骤结束时递增它并尝试$_SESSION["shopping_basket"][$counter]['item_quantity'] += intval($_POST["quantity"]);