2012-07-19 35 views
0

我想添加一个外部脚本,它通过GET检查ID,然后重定向到购物车(如果有的话),否则它会设置错误并重定向到购物车。 剧本是从产品页面调用:Magento外部脚本和会话

http://myhost/scripts/addto.php?sku=12345 

这里是colmplete代码

<?php 
    include_once '../../../../../app/Mage.php'; 
    Mage::app(); 
    $session = Mage::getSingleton('core/session', array('name' => 'frontend'));  
    $sku = $_GET['sku']; 
    if (!isset($_GET['qty'])) { $qty = '1'; } else { $qty = $_GET['qty']; } 
    $id = Mage::getModel('catalog/product')->getIdBySku($sku); 
    if ($id == '') { 
     $id = $sku; 
     Mage::getSingleton('checkout/session')->addError("Product not found!"); 
    } 

工作正常,但缺少注销重新登录和错误消息后。我发现这是因为设置了一个cookie。删除该cookie后,重新登录后错误消息将再次运行。

回答

0

什么不行?

您注销并登录,然后脚本停止工作?所以会议没有找到?该产品没有找到?该产品未加载?用户不转发? :-)

当然没有。该消息是一个通知。如果显示一次,则会被删除。

你想要什么行为?

+0

好吧,抱歉。它在重定向到购物车后不显示错误消息。我可以改变浏览器有效,然后重新登录,它不会再显示它。 – Stephan 2012-07-19 16:01:55

+0

编辑了这个问题! – Stephan 2012-07-19 18:40:07

+0

Cookie集?我不知道你在说什么: - /设置了什么cookie? – 2012-07-19 20:10:45

0

使用Mage::getSingleton('core/session')->addError("Product not found!");,也许结账/会话是特定的用户...

欢呼