Kohana sessions and files not under the framework
I'm working on a site that is using the Kohana framework. So far I've been fine jumping in and taking over the project. Today I'm implementing a few 3rd-party features that need to use a session variable. I can set the session variable and use it fine on pages that are using controllers to serve them up, but if I make ajax calls or in this instance calls to the 3rd party page, the session data is not availa开发者_开发技巧ble to me.
I cannot figure this one out. I've tried a few things from the Kohana forums, but nothing seems to work.
Visual example:
html html/application controller files ajax.php third-party.php
If I call up ajax.php I cannot access the session data that I am setting inside "kohana" pages.
my system/config/session.php file is using 'cookie' as the driver. Expiration and Regenerate are set to 0.
Any ideas?
That's because you're using the cookie session driver. You'd probably be able to get access if you were using the 'native' driver, which uses the internal php session.
As asked above, is there some reason you're not building the ajax.php within Kohana? That would save you a lot of trouble.
On the other hand, it's possible to decrypt the session from within your external ajax.php (which I wouldn't recommend, but have had to do in order to get the kohana session data passed to a WordPress installation running on a subdomain).
From what you say about the session configuration I think you are using Kohana 2.x.
And Kohana 2 clears the $_GLOBALS. So you might have problems accessing native $_POST
, $_COOKIE
, $_SESSION
, $_GET
, $_GLOBALS
and $_REQUEST
arrays.
I recommend using the native driver for the session library, but I highly recommend even more migrating to Kohana 3.x.
精彩评论