PDA

View Full Version : bbuserinfo Question


PeteBekisz
02-20-2005, 04:06 AM
Hi all :)

Was wondering how I could easily access the $bbuserinfo array from a non-VB page. I have created a script that will practically re-create it, but it only works if the user tells vB to remember them. Anyone have any ideas for either changing this code or accessing bbuserinfo?


<?php
if ($_COOKIE['bbuserid']) {
$db = new gt_mysql;
$v = $db->db_selectData("SELECT * FROM user WHERE userid = '$bbuserid'");
$db->db_close;
$r = mysql_fetch_row($v);
$userInfo['id'] = $r[0];
$userInfo['groupid'] = $r[1];
$userInfo['name'] = $r[4];
$userInfo['email'] = $r[7];
$userInfo['join'] = date("m/d/Y", $r[17]);
return $userInfo;

}
?>

Akex
02-20-2005, 07:00 AM
You can get $bbuserinfo by calling global.php :)

chdir('path/to/your/forum/directory/'); //don't use it if your page is in the forum directory
require_once('global.php');

Another way : don't need to say to vBulletin to remember them.

if ($_COOKIE["bbsessionhash"]) {
$query_session = "SELECT user.* FROM session LEFT JOIN user ON user.userid=session.userid WHERE sessionhash = '" . addslashes($_COOKIE["bbsessionhash"]) . "' LIMIT 1";
$result_session = $db->db_selectData($query_session);
$userinfo = array();
while($row_session = mysql_fetch_row($result_session)) {
foreach($row_session as $field => $value) {
$userinfo["$field"] = $value;
}
}
}

PeteBekisz
02-23-2005, 03:10 PM
[QUOTE=Akex]You can get $bbuserinfo by calling global.php :)

chdir('path/to/your/forum/directory/'); //don't use it if your page is in the forum directory
require_once('global.php');

In theory -- this is a great idea and something I originally used. However, I discovered something really disturbing during a few stress tests.

I've been testing a content management application which bolts on to vB on a dedicated server here. When I included the vB files and hit it with about 7,000 requests, it brought the server load from 0.00 to 18.57. If I manually added the $bbuserinfo array without loading the vBulletin files, it was running around 1.5.