首页 文章

将vBulletin数据放入外部目录

提问于
浏览
0

我试图获得vbulletin会话变量,例如:来自vbulletin的父目录中的外部页面/文件的userID和用户名(在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目录中完美地工作,但是它返回用户名的未注册和用户ID的0,它也使我退出当前的vbulletin会话 .

我已经检查了1.保存Cookie的路径设置为"Suggested Settings '/' " 2. $bbuserinfo['userid'] 不起作用3. $vbulletin->userinfo['userid']$vbulletin->userinfo['username'] 分别返回0和未注册4.code对于vbulletin版本4.2.3是正确的

任何人都可以建议我如何正确地获取vbulletin安装的外部目录中当前登录用户的vbulletin会话变量(userid和用户名)/ [PHP] $ vbulletin-> userinfo [/ PHP]数组 .

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

请随时询问任何其他信息 . 万分感谢:) .

1 回答

  • 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);
    

相关问题