【问题标题】:Shopping cart's item will not update quantity购物车的商品不会更新数量
【发布时间】:2017-03-13 12:45:45
【问题描述】:

我正在为一个大学项目制作一个虚拟在线商店。我遇到了一个我无法解决的问题。可以在购物车中添加/删除商品,但如果有人尝试添加购物车中已经存在的商品,数量将不会更新。

显示的 HTML 是在 homepage.php 上显示可以添加到购物车的项目的代码。

显示的 PHP 是与“添加”操作一起使用的代码 - 将新商品添加到购物车,或者如果它已经是最新的,它应该将所选数量添加到购物车中已有的数量。后一个功能将不起作用。

HTML

<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 上) 谁能解决这个问题?

【问题讨论】:

    标签: php html shopping-cart


    【解决方案1】:

    在 foreach 之前设置 $counter = 0;,在每一步结束时增加它并尝试类似 $_SESSION["shopping_basket"][$counter]['item_quantity'] += intval($_POST["quantity"]);

    【讨论】:

    • 我很困惑。我已经实现了你的代码,现在它似乎在篮子里做了一个新项目,但除了数量之外没有其他特征。它实际上根本不会改变特定项目的数量..
    • 额外添加数量然后更新新项目的(无特征)数量。
    • 尝试无柜台$_SESSION["shopping_basket"][$key]['item_quantity'] += intval($_POST["quantity"]);
    猜你喜欢
    • 1970-01-01
    • 2015-06-01
    • 1970-01-01
    • 2019-10-08
    • 1970-01-01
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    相关资源
    最近更新 更多