0

我有这个正在尝试构建的购物车,并且我找到了其他人开发的示例设置。我已经能够对其进行修改以在大多数情况下完成我需要的工作。

但对我来说,问题是,当您“添加到购物车”时,它不会创建新的行/实例,而是更新该特定项目的数量。我需要它来创建新行,而不是更新商品的数量(因为在我的详细修改中,您在“添加到购物车”之前选择了颜色/尺寸/材料/等)。

毫无疑问,这是对我下面的内容的简单修改,但我所有试图做到这一点的尝试都失败了。但以下是正在发生的事情的简化版本:

switch($action) {
case "add":
    $_SESSION['cart'][$product_id]++;
break;
}

if($_SESSION['cart']) {

foreach($_SESSION['cart'] as $product_id => $quantity) {    

    $sql = sprintf("SELECT title, description, price FROM shoes WHERE id = %d;", $product_id);
    $result = mysql_query($sql);

    if(mysql_num_rows($result) > 0) {

        list($title, $description, $price) = mysql_fetch_row($result);
        $line_cost = $price * $quantity;
        $total = $total + $line_cost;
        echo "  $title<br />
                $quantity <a href=\"$_SERVER[PHP_SELF]?action=remove&id=$product_id\">X</a><br />
                $line_cost";

        }           
    }
}
4

1 回答 1

0

这将创建一个新行,但我不太确定你在做什么

switch($action) {
    case "add":
        $_SESSION['cart'][$product_id][];
        break;
}
于 2013-07-05T13:13:54.333 回答