【问题标题】:How to persist cart in UberCart?如何在 UberCart 中保留购物车?
【发布时间】:2015-04-25 08:12:34
【问题描述】:

我有一个购物车,我在其中添加了产品 A 和 B。产品 A 可以在没有 B 的情况下购买,但如果您购买产品 A,则您也必须购买产品 B。我写了一个简单的表格来跟踪这些关系,并在它们的规则被破坏时阻止你检查。

当用户添加到他们的购物车然后继续注册时,我的问题就出现了。注册后,cart_item_id 发生了变化,用户的 session_id 也发生了变化。

如何将匿名用户的会话与现在注册并登录的用户的会话匹配?

【问题讨论】:

    标签: session drupal-7 ubercart


    【解决方案1】:

    我意识到我可以将任何数据添加到 cartContents 中,而不是使用第二个表来存储我想要保留的数据,它会在用户登录和注销时自动保留我存储的所有信息。

    这就是我进行更新的方式:

    $cartItemID = 1; // the id of the item in the cart I want to add info to
    $cartContents = uc_cart_get_contents();
    foreach ($cartContents as $c) 
    {
        if ($c->cart_item_id == $cartItemID)
        {
            $c->data['my_chosen_key'] = $sessionData;
            uc_cart_update_item($c);
        }
    }
    

    如果您注销并重新登录,信息将保留。

    【讨论】:

      猜你喜欢
      • 2011-05-12
      • 2011-06-18
      • 2011-03-15
      • 2015-06-09
      • 2018-05-07
      • 2023-03-04
      • 2011-04-28
      • 2011-01-24
      • 2013-01-20
      相关资源
      最近更新 更多