如何在php中使用cookie创建新的会话行/实例?

时间:2013-06-22 20:13:12

标签: php list cookies cart shopping

我有这个购物车我正在尝试构建,我找到了其他人开发的样本设置。我已经能够修改它以完成大部分我需要它。

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

毫无疑问,这是对我下面所做的一个简单的修改,但我所有尝试做到这一点的尝试都失败了。但下面是最新发生的简化版本:

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";

        }           
    }
}

1 个答案:

答案 0 :(得分:0)

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

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