vBulletin 作为整个网站的登录名(编辑:已取得一定进展)


vBulletin as login for entire website (edit: a certain amount of progress has been made)

我在vBul论坛中遇到了一些关于如何做到这一点的砖墙,所以我想我会问一个永远不会让我失望的论坛。

有谁知道一种简单的方法,在论坛的外部页面上,可以查看用户是否已登录,并可能在登录时提取他们的用户 ID?我已经看到一些具有这种意图的插件,但似乎都失去了支持,vBul 4.1 似乎因此"破坏"了它们。

任何和所有的帮助都表示赞赏。一旦我有了这些东西,我就可以自己编写与数据库一起使用的脚本。我只需要这两个变量:)

无论如何,我已经取得了一些进展。在备用页面上,以下代码似乎链接到vBuls用户管理器:

<? ini_set('display_errors', 1);
error_reporting(E_ALL); ?>
<? chdir("/home/sites/<sitename>/public_html/forum/");
require("./global.php"); ?>
<? echo "Your vBul user id is: ".$vbulletin->userinfo['userid']." and your username is ".$vbulletin->userinfo['username'].""; ?>
<? chdir("/home/sites/<sitename>/public_html/dev"); ?>

我说它的连接正常,因为它返回"您的 vBul 用户 ID 为:0,您的用户名未注册",如果不是这样,它会返回到空格。问题是它返回 0 并且未注册,尽管我肯定在论坛上登录过。

有什么建议吗?

刚刚意识到没有人回答这个问题,所以这是我自己的解决方案:

#grab global.php to access vbuls user systems
chdir("../forum/");
require("./global.php");
require_once('includes/functions_login.php');
#sanatize all variables for easier use
$username = $vbulletin->userinfo['username'];
$userid = $vbulletin->userinfo['userid'];
$loggouthash = $vbulletin->userinfo['logouthash'];
chdir("../dev/");

这很好排序,我知道我不需要像那样清理变量,但这是个人喜好。