【发布时间】:2017-02-05 20:22:33
【问题描述】:
我在一个使用子域、会话和 Ajax 的 PHP 项目中工作。但不幸的是我不能让它工作!我会尽力解释:
假设我在这个域:app.mysite.com/index.php
在这个域中,我有一个表单可以向 mysite.com/functions/execute.php(没有任何子域)执行 Ajax 请求
在 execute.php 的第一行,我有一个 require_once,其中包含一个 helper.php 文件。在这个文件中我放了:
ini_set('session.cookie_domain', '.mysite.com');
session_set_cookie_params(0, '/', '.mysite.com');
session_start();
列出的所有 PHP 文件还包括 helper.php。
例如,如果我运行:
echo $_SESSION["myValue"];
在 app.mysite.com/index.php 或任何其他子域,如 auth.mysite.com,我会得到值:"测试”。 但是如果我在 execute.php 上运行相同的代码,并通过 Ajax 返回值,我将得到未定义的索引!
我做错了什么?
【问题讨论】:
-
感谢您的回答,但不幸的是,我无法使用 AJAX 获取 $_SESSION 值。如果我打开 AJAX 上请求的 URL,在我的 Web 浏览器中我可以看到 $_SESSION 值。只使用不起作用的 AJAX!
标签: php ajax apache session subdomain