如何防止多次提交付款模块?

时间:2016-06-23 00:18:39

标签: magento

我想知道如何防止用户在Magento上多次提交付款。

问题在付款失败时开始,然后用户可以返回(浏览器上的后退按钮)并再次尝试。

if($response == 3 || $responsecode == 300){
    $this->cancelAction();
    Mage::getSingleton('core/session')->addError("Invalid payment ".$responsetext.". Try again.");
    Mage_Core_Controller_Varien_Action::_redirect('checkout/onepage/failure', array('_secure'=>true));
    return $this;
}

1 个答案:

答案 0 :(得分:0)

您可以清空用户购物车,这意味着他们必须再次添加产品;

Mage::getSingleton('checkout/cart')->truncate()->save();

或者可能会重定向到购物车页面并在那里显示错误,因此他们必须再次完成整个结帐流程;

Mage_Core_Controller_Varien_Action::_redirect('checkout/cart', array('_secure'=>true));