5

我正在从位于example.com/corephp/的核心 php 应用程序设置用户会话,现在我想将此用户重定向到cakephp 中的example.com(主站点)。

如何保留从核心 php 应用程序到 cakephp 应用程序的用户会话?

我从核心 php 应用程序中尝试设置$_SESSION['user'] = someone$_SESSION['token'] = token尝试从 cakephp 中检索该值,但它没有用。

我试图用谷歌搜索,但没有合适的答案。

提前致谢。

- - - - - - - - - - - 编辑

我试过添加 session_name('CAKEPHP'); 到核心 php 应用程序。以及试图将我的蛋糕应用程序的安全级别从中降低到低。

4

2 回答 2

2

没有测试,但试试这个。

在您的 corephp 应用程序中:

$_SESSION['Auth']['User'] = $someone;

我的理由是它会设置 $_SESSION,但也许 CakePHP 出于某种原因无法识别它。所以我们使用 Cake 的 API 正确设置它:

在 CakePHP 中

$this->Session->write('Auth.User', $_SESSION['Auth']['User']);
于 2012-05-23T19:15:59.323 回答
0

始终使用会话包装器。这就是他们的目的

在控制器中:http: //book.cakephp.org/2.0/en/controllers/components.html#using-components

在视图中:http: //book.cakephp.org/2.0/en/core-libraries/helpers/session.html

其他地方: http ://book.cakephp.org/2.0/en/development/sessions.html#reading-writing-session-data

永远不要使用 $_SESSION 访问它,你应该没问题(cake 会为你启动会话并在后台处理很多事情)。

如果您共享会话,请确保您同样设置会话名称。两者也应该使用相同的会话类型(可能是 php)。

于 2012-05-23T23:06:20.947 回答