将vBulletin数据放入外部目录

时间:2015-12-26 00:28:26

标签: php session session-cookies magento-1.9 vbulletin

我正在尝试获取vbulletin会话变量,例如:来自vbulletin的父目录中的外部页面/文件的userID和username(在magento安装中)。 我按照以下步骤建议了这个过程:

    <?php
    global $vbulletin;
$curdir = getcwd();
chdir($curdir.'/forum');
require_once('./global.php');

//Use $bbuserinfo. 
echo('userid: ' . $vbulletin->userinfo['userid']);
echo('username: ' . $vbulletin->userinfo['username']);
chdir($curdir);  
    ?>

然后我会像下面的代码一样回显数据

<?php echo $vbulletin->userinfo['username']; ?>

这在vbulletin目录中完美运行,但是它返回用户名的Unregistered和userid的0,它也会将我从当前的vbulletin会话中记录下来。

我已经检查过了 1.保存Cookie的路径设置为&#34;建议的设置&#39; /&#39; &#34; 2。$bbuserinfo['userid']不起作用 3。$vbulletin->userinfo['userid']$vbulletin->userinfo['username']分别返回0和未注册 4.如建议的那样,对于vbulletin版本4.2.3,代码是正确的

任何人都可以告诉我如何正确地将vbulletin安装的外部目录中当前登录用户的vbulletin会话变量(userid和username)/ [PHP] $ vbulletin-&gt; userinfo [/ PHP]数组。

  

注意:我遇到无法打开的流:没有这样的文件或   maoloo目录(父目录)中autoload.php错误的目录,我使用上面的代码,我怀疑这与手头的问题有关

请随时询问任何其他信息。 非常感谢:)。

1 个答案:

答案 0 :(得分:1)

这适用于我在vBulletin目录之外的服务器上的每个路径:

$curdir = getcwd();
chdir('/absolute/path/to/your/vbulletin/');
define('DIE_QUIETLY', 1);
define('NO_REGISTER_GLOBALS', 1);
define('NOCOOKIES', 1);
define('SESSION_BYPASS', 1);
define('THIS_SCRIPT', 'my_external_script');

$globaltemplates = array();
$specialtemplates = array();
$actiontemplates = array();
$phrasegroups = array();

require_once('./includes/init.php');
$vbphrase = init_language();
require('./includes/functions_user.php');

echo $vbulletin->userinfo['userid'];

chdir($curdir);