【问题标题】:Codeigniter Shopping Cart: Adding the Same Product AgainCodeigniter 购物车:再次添加相同的产品
【发布时间】:2012-09-01 22:24:03
【问题描述】:

我是第一次试用 CodeIgniter 的购物车库。我已经设置了所有会话,当我将商品添加到购物车时,它会出现在 $this->cart->contents();到现在为止还挺好。添加如下所示:

$data = array( 'id'      => 1,
               'qty'     => 1,
               'price'   => 20,
               'name'    => "Item1");

$rowid = $this->cart->insert($data);

但是当我再次尝试添加相同的商品时,它不会增加购物车中该商品的数量。我以为执行相同的插入会再增加一个,将该行的数量增加到 2,但事实并非如此。

如果我添加其他产品,它会出现在第一个产品旁边。但同样,尝试添加另一个该产品未能增加计数。

我当然错过了一些东西。也许你知道它是什么。

非常感谢!

【问题讨论】:

    标签: php codeigniter shopping-cart


    【解决方案1】:

    我相信仅将两个项目相加并不能将它们相加得到一个新的数量。

    您实际上可以使用新的数量 [qty] 值更新购物车。请参阅此页面的“更新购物车”部分:http://codeigniter.com/user_guide/libraries/cart.html

    注意:您可能需要执行以下操作:

    1. 使用$this->cart->product_options($rowid); 获取产品详细信息,或者通过循环所有项目并使用$this->cart->contents(); 找到正确的一项
    2. 从该数组中获取数量
    3. 数量加一
    4. 用新的数量值更新 $rowid

    希望有帮助!

    【讨论】:

    • 确实,如果您提供一个文本框 [显然已验证] 来更新数量,那将非常简单。但是,如果商品已经在购物车中,如果您希望“添加到购物车”增加一,我也可以理解。毕竟,当我在产品页面上点击“添加到购物车”的垃圾邮件时,包括我自己在内的一些用户会这样。
    【解决方案2】:

    不久前我在我的应用程序中需要类似的东西,所以我编辑了一些 CI 购物车功能。看看这个帖子。

    Codeigniter Shopping Cart

    我希望您可以使用其中的一些代码,至少它会为您指明正确的方向。

    【讨论】:

      猜你喜欢
      • 2012-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-13
      • 2021-04-04
      • 2021-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多