在Magento中设置会话/ cookie的Ajax调用的正确方法是什么?

时间:2015-12-02 20:31:19

标签: php ajax magento

我是Magento的新手,目前我正在尝试从我的JS文件中定期进行Ajax调用。到位于项目根目录的PHP文件与app文件夹相同的级别。但是当我执行调用时,ajax部分工作正常,但我总是在我的网络控制台中得到500 response。如果我尝试直接调用文件,如website.com/file.php,它只会显示它。 magento中是否存在妨碍我这样做的事情?

另外,在Magento中设置会话和cookie的最佳方法是什么,我在本地做了一个小脚本,一旦弹出关闭它就不会在会话的剩余部分显示它(并且它在本地工作)但在Magento我无法得到它。

以下是我的一些代码:

的Ajax

// Create a session to not show pop-up
jQuery.ajax({
    url: jQuery('#baseURL').val() + "/mailchimp_controls.php",
    type: "post",
    data: { "action": "session" },
    success: function(data){
        // Do something if necessary        
    }
}); 

PHP

// If Session set a session
if($_POST['action'] == "session"){
    return "Session";
    // Set value in session
    $seen = true;
    //Mage::getSingleton('core/session')->setShowMailChimp($seen);
}

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题,我在APP / Core / Local

中创建了一个Magento模块

我可以使用MAGE设置会话和Cookie,如果有人遇到类似的问题,我会谷歌一个关于如何在(本地)文件夹中创建模块的教程,以便在升级时不会覆盖它。