Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
  #1  
Old 06-15-2008, 10:48 AM
Fulla Fulla is offline
 
Join Date: Nov 2006
Location: Essex, England
Posts: 73
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Integration of Vbulletin in website causing errors

Integrating Vbulletin functions into my website is causing me problems.

If I include the following in my script:
<?php
//Begin Define $rootdir
$times=substr_count($_SERVER['PHP_SELF'],'/');
$rootdir='';
$x=1;
while ($x < $times) {$rootdir .= "../";$x++;}
$GLOBALS['rootdir']=$rootdir;
//End Define $rootdir

define('DIR',$rootdir.'board/');
define('CWD',$rootdir.'board/');
require_once(DIR.'global.php'); //these 4 files all (also separate) cause this problem
require_once(DIR.'includes/functions_bigthree.php'); //these 4 files all (also separate) cause this problem
require_once(DIR.'includes/class_postbit.php'); //these 4 files all (also separate) cause this problem
require_once(DIR.'includes/class_bbcode.php'); //these 4 files all (also separate) cause this problem
?>

Once I require a file from Vbulletin, all my vars are wiped.
If I open the page as followed: myfile.php?page=test
Then the following scripts give the following response

<?php
$pagina=$_GET['page']

echo $pagina; //test

//vbinclude

echo $pagina; //empty
?>

<?php
$pagina='about';
$pagina=$_GET['page'};

echo $pagina; //test

//vbinclude

echo $pagina; // empty
?>

<?php
$pagina='about';

echo $pagina; //about

//vbinclude

echo $pagina; //about
?>

So it doesn’t really wipe out the $vars, altho vars filled with $_GET’s are wiped.

What is causing this, and how can I solve this?

I put this in my php.ini: register_globals = off

thx for any help
Reply With Quote
  #2  
Old 06-15-2008, 02:34 PM
Opserty Opserty is offline
 
Join Date: Apr 2007
Posts: 4,103
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Include global.php at the begging of your script. and use chdir().

Like this:

PHP Code:
<?php
$cwd 
getcwd(); // Save our current directory to switch to after
chdir('path/to/forum');
require_once(
'global.php')
// more require_once()
chdir($cwd// Switch back to original directory

// Continue script...
Reply With Quote
  #3  
Old 06-15-2008, 05:38 PM
MoT3rror MoT3rror is offline
 
Join Date: Mar 2007
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

vBulletin destroys most variables when it is included. If you define the variables as a constant, vbulletin will keep this value.

I suggest if you are going to use superglobals such as $_GET, $_POST, $_REQUEST, etc. to use the vBulletin Input Cleaner.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:55 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03766 seconds
  • Memory Usage 2,173KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (3)post_thanks_box
  • (3)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit_info
  • (3)postbit
  • (3)postbit_onlinestatus
  • (3)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete