将洋红色购物车拖放然后将产品添加到购物车会产生500错误

时间:2016-02-23 07:18:28

标签: php magento cart

这里我们首先截断我们的magento购物车,

$cart = Mage::getModel('checkout/cart');                
  $cart->truncate()->save(); // remove all active items in cart page
  $cart->init();


  Mage::getSingleton('checkout/session')->clear();

在此之后,我们尝试添加产品

$cart = Mage::getSingleton('checkout/cart'); 
   $cart->init();
   $cart->addProduct($id,$qty);

它提供500内部服务器错误

注意:当我们将产品数量添加到最大值时,它只会出错。

实施例。可用数量。 100 在我的案例中$qty=100

注意:我们的代码工作正常,但只是第一次,其余的时间是出现此错误。

1 个答案:

答案 0 :(得分:0)

找到答案,

我找到了答案,

 $session = Mage::getSingleton('checkout/session');
    $session->getQuote()->delete();
    $session->clear();

    $cart = Mage::getModel('checkout/cart');
    $cart->setQuote($session->getQuote());

    $product = Mage::getModel('catalog/product') -> load($product_id);
    if ($product) {
        if ($product -> isSaleable()) {
            $cart -> addProduct($product, array('qty' => $qty));
        }
    }

    // $session->setCartWasUpdated(true); // Not really necessary - Vicary
    $cart->save();