会话在Magento中不起作用

时间:2013-11-21 12:22:30

标签: php jquery ajax magento session

我目前正在研究磁电机项目。我为演示目的制作了一个颜色选择器,以便用户可以更改该演示站点上的颜色。基本上我在做什么我得到颜色代码,然后进行ajax调用,将值存储在会话中。这在简单的PHP中工作得很好。我不知道它在Magneto的工作方式。这是我的所有代码

  

我的Ajax代码

function colorbg(){
            var colorbg = jQuery( "#colorbgi" ).val();

            //alert( colorbg );
            jQuery.ajax({
              type: "POST",
              url: "<?php echo $this->getSkinUrl('js/ajax_set_color.php'); ?>",
              data: { colorbg: colorbg }
            })
              .done(function( msg ) {
                  alert( msg +" color code" );
                  jQuery(".menu_container").css("background-color", '#'+msg);

              });

    }

HTML代码

<table>
        <tr>
            <td>Background Color: &nbsp;</td>
            <td><input class="color" value="66ff00" name="colorbg" id="colorbgi" onChange="colorbg()"></td>
        </tr>
    </table>

我试图存储会话的Ajax文件

<?php
    $inputMessage = $_REQUEST['colorbg'];
    Mage::getSingleton('core/session')->setWelcomeMessage($inputMessage);
    print $_REQUEST['colorbg'];

我获取会话值的代码

<?php
    $outputMessage = Mage::getSingleton('core/session')->getWelcomeMessage();
    echo $this->__($outputMessage);
?>

所以任何建议我错了。感谢

1 个答案:

答案 0 :(得分:0)

在您的Ajax文件中,在顶部添加:

require("app/Mage.php");
Mage::app();

这将初始化Magento,以便您能够访问那些Magento会话变量。