跨文件夹的phpbb会话

跨文件夹的phpbb会话,php,session,phpbb,Php,Session,Phpbb,我正在一个网站上使用phpBB(2.0.22),该网站位于myWebSite.com/forum 我正在myWebSite.com/otherForders中创建一些其他页面 我想要的是,检查一个人在myWebSite.com/otherForders时是否登录myWebSite.com/forum 不知道这是否可能 我尝试了session_start();打印(美元会话)在myWebSite.com/otherForders/index.php中,我得到的只是Array()(一个空数组) 有人

我正在一个网站上使用phpBB(2.0.22),该网站位于myWebSite.com/forum

我正在myWebSite.com/otherForders中创建一些其他页面

我想要的是,检查一个人在myWebSite.com/otherForders时是否登录myWebSite.com/forum

不知道这是否可能

我尝试了
session_start();打印(美元会话)在myWebSite.com/otherForders/index.php中,我得到的只是
Array()
(一个空数组)

有人有办法吗?
谢谢。

会话变量将无法通过这种方式访问。phpbb的会话cookie存储在
myWebSite.com/forum
中,当您访问
forum
目录ie
(otherForders)中的页面时
myWebSite.com/forum的会话将不在那里,新会话将启动,这显然是一个空白数组,直到您分配一些值,并且此会话的会话cookie存储在
myWebSite.com/otherForders

您必须告诉php将会话保存在根域上,即
myWebSite.com
,这样会话将在所有其他目录中可用

您可以使用
ini\u set
执行此操作

在调用
会话启动()
之前,必须先设置
ini\u set
。我不知道他们是否提供了任何管理接口来更改会话cookie域值。您应该检查phpbb是否提供此功能

ini_集('session.cookie_domain','.myWebSite.com')

你也可以试试

session_set_cookie_params(0, '/', '.myWebSite.com');
session_start();

你应该把你的电路板和你的代码结合起来

这是样品:

define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
然后使用

$userdata['username']、$userdata['user\u id']等。
$userdata具有一个数组,其中包含登录用户板的users_表中的值。

感谢@Shakti Singh,在这里使用
ini_集('session.cookie_domain','.myWebSite.com')部分请?你应该在
会话\u start()之前调用它。
@Jeremy:因为你的phpbb会话仍然在域
mywebsite.com/forum
上。那也应该在
mywebsite.com
谢谢,phpbb结构很复杂,我甚至没有找到他们在哪里使用DW搜索进行会话。无论如何,谢谢。我甚至试着在mywebsite.com/forum/中创建一个test.php,看看会话是如何通过
session_start()显示的;打印(美元会话)我也得到了一个空数组。奇怪。谢谢@Alex Emilov,这可能会有点效果,但我得到了[username]=>AnonymousWell,我主要编写phpBB3,我不确定这个集成,我下载了一个新的phpBB2副本,查看了一些页面,似乎是代码。也许我们错过了一些验证。你确定,你登录了吗?我将安装2.0.22并再次发布。我已经安装并测试了它,它似乎是这样工作的。首先,您确定文件的指定路径正确吗?请参阅$phpbb_root_path='./';(您可能有错误报告0,对此我们没有结果)第二个问题是url中需要SID参数。从论坛索引复制SID链接并粘贴到新文件的url中。index.php?sid=a90814a1fb6f8ce49f1bb6edde9f839b=>test.php?sid=a90814a1fb6f8ce49f1bb6edde9f839b嗯,肯定有问题。我在site.com/forum/index.php中登录。然而,当我用你上面写的数据创建一个site.com/forum/test.php时,我得到了[user_id]=>-1ps。感谢你的朋友尝试。是的,尝试了一切。路径是正确的,否则它将给我错误(错误报告为1)。还试图复制sid