Kohana会议和文件不在框架下

时间:2011-06-23 18:55:12

标签: php session kohana

我正在使用Kohana框架的网站上工作。到目前为止,我一直很好地跳进并接管该项目。今天我正在实现一些需要使用会话变量的第三方功能。我可以设置会话变量并在使用控制器提供服务的页面上正常使用它,但如果我进行ajax调用或在此实例中调用第三方页面,则会话数据不可用。

我无法想出这个。我在Kohana论坛上尝试过一些东西,但似乎没什么用。

视觉示例:

html
 html/application
  controller files
ajax.php
third-party.php

如果我调用ajax.php,我无法访问我在“kohana”页面中设置的会话数据。

我的system / config / session.php文件使用'cookie'作为驱动程序。 Expiration和Regenerate设置为0。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

那是因为你正在使用cookie会话驱动程序。如果您使用的是使用内部php会话的“本机”驱动程序,您可能可以访问。

如上所述,是否有一些原因你没有在Kohana中构建ajax.php?这样可以省去很多麻烦。

另一方面,可以从外部ajax.php中解密会话(我不建议这样做,但必须这样做才能将kohana会话数据传递给运行在其上的WordPress安装子域)。

答案 1 :(得分:0)

根据您对会话配置的说法,我认为您正在使用Kohana 2.x。

Kohana 2清除$ _GLOBALS 。因此,您可能无法访问原生$_POST$_COOKIE$_SESSION$_GET$_GLOBALS$_REQUEST数组。

我建议使用会话库的本机驱动程序,但我强烈建议您迁移到Kohana 3.x.