PDA

View Full Version : Is my problem global variables?


galt
05-10-2009, 03:42 PM
I am trying to sync registartion between vB and my CMS.

Here is what finally worked to get it to interpret cleanly.

if ($vbswitch == 'Y') {
chdir('./forums');
define('THIS_SCRIPT','pg_usermgmt.php');
define('VB_AREA', 'Forum');
require_once("global.php");
require_once("./includes/class_dm.php");
require_once("./includes/class_dm_user.php");
chdir('../');
};

and then further on (but not yet tested)

if ($vbswitch == 'Y') {
$newuser =& datamanager_init('User', $vbulletin, ERRTYPE_ARRAY);
$newuser->set('username', $UserName);
$newuser->set('email', $EMail);
$newuser->set('password', $Password);
$newuser->set('usergroupid', 2);
if ($newuser->errors) {
echo $newuser->errors; // fix this later
}
else {
$newuserid = $newuser->save();
};
};


But nothing is ever simple. Now it seems that this code has broken the rest of my program. I suspect it has something to do with require_once('global.php') or one of the thousands (okay hundreds) of include files referenced thru there.

The most obvious candidates for the problem are that I have an object named $user and local variables ($UserID, $err, $error, $sbutton, $errorflag) that are used to control program flow. Do you know if any of these are part of all the global mess in VB and causing conflicts? Is there somewhere I can find a list of global variable names used by VB? Is there an easy way around this? Some of these I am stuck with (especially the $user object, which is in every program in my system). Other variable names I can changes, but would like to know which ones are causing the problem first. I have never used or allowed global variables in 35 years of programming (it's called coding discipline & standards), so know very little about them.

RLShare
05-11-2009, 01:30 AM
If you are trying to see if VB is altering any of your global variables then create a test page and test the value of your global variables before and after you include 'global.php'

galt
05-11-2009, 01:53 AM
I don't have any global variables. I am concerned about the ones that vB is assigning and whether they are stepping on my local variables. I am just stuck on the learning curve that is VB, and it is difficult to dig thru all the includes and requires to see what vB is doing with global.php. What I know is that when I include it in my program, it breaks the key control structures (controlled by variables listed in prior post) and my working program is now broken in a way that is hard to debug. I was hoping for a clue before I have to dig into it from ground zero.

I hate VB code.

RLShare
05-11-2009, 04:20 AM
If you can echo the VB errors at the point where you include VB's global.php then it should be no problem to dump the variables you think may be the problem right before you include it and after you include it in a test page to see if the variables are getting changed by VB. That seems like the easiest and most logical way to debug your problem to me.

galt
05-11-2009, 05:50 AM
Thanks. I was hoping for someone with some specific knowledge of the vB globals or that can point me at some documentation. There are no errors. Without getting into the specifics of my program, there really is no clue to start with. It could be anything. The recursive script just re-executes as though it is starting new rather than executing itself. VB globals is just a wild guess. It could be any kind of poor programming practices that is causing it. Sigh....

I guess I have to do it the hard way. I have already spent 12-15 hours too long on this seemingly simple task. I don't even know if I am making progress or headed into a wall. I gave up on vB several years ago and went with phpBB for several projects due to the product architecture and lack of useful documentation or support in version 2. Nothing much seems to have changed.

--------------- Added 1242056610 at 1242056610 ---------------

Thanks all. I am on to the next problem in trying to make this work. Will it ever end?