0

我有一个问题,我需要将会话 ID 传递给模块“SMF 连接器”。

问题源于这样一个事实,即 SMF 论坛(位于子文件夹中)出于某种原因正在使用不同的会话集。我通过对 MODx 的会话 ID 进行硬编码来解决这个问题,但是当我在一天后下次加载该站点时,这当然失败了。

我试过使用

global $modx;  
$SID = $modx->documentObject[SID];
session_id($SID);
session_start();

但无济于事,事实上它阻止了整个论坛的加载!

有任何想法吗?

4

1 回答 1

1

原因是 modx 会话数据仅限于 index.php 和其中包含的脚本。我想这是设计使然。

据我所知,您的 SMF 脚本是由单独的请求调用的。尝试在外部 php 脚本的开头添加以下行:

// start MODx session to access its session data
require_once ($_SERVER["DOCUMENT_ROOT"] . '/manager/includes/config.inc.php');
startCMSSession();
于 2011-03-23T14:32:58.670 回答