Hello,
A few weeks ago, we launched a website with a custom registration in stead of register.php to add new users. With the help of this forum, we succeeded without any problems.
Since last monday, the register was down. The php-code did not change so we have no clue what so ever what could be the problem.
Error code:
HTML Code:
<b>Fatal error</b>: Call to a member function query_read() on a non-object in <b>/var/www/html/forum/includes/adminfunctions.php</b> on line <b>2403</b><br />
PHP Code:
//load the vbulletin framework
define('VB_AREA', 'External');
define('SKIP_SESSIONCREATE', 1);
define('SKIP_USERINFO', 1);
define('CWD', PATH);
require_once(CWD . '/includes/init.php');
//work around to make global vbulletin stick
$registry = $vbulletin;
unset($vbulletin);
$vbDb = $registry->db;
//declare as global vbulletin's registry and db objects
global $vbulletin,$db;
$vbulletin = $registry;
//vbulletin db object which is needed for vbulletin's project tools addon
$db = $vbDb;
$newuser =& datamanager_init('User', $vbulletin, ERRTYPE_ARRAY);
$newuser->set('username', $this->data['User']['firstname'].' '.$this->data['User']['lastname']);
$newuser->set('email', $this->data['User']['email']);
$newuser->set('password', $this->data['User']['password']);
$newuser->set('birthday', $this->data['User']['birthday']);
$newuser->set('usergroupid', 2);
$userfields['field11'] = $this->data['User']['optin'];
$userfields['field5'] = $this->data['User']['abo_nr'];
$userfields['field6'] = $this->data['User']['firstname'];
$userfields['field7'] = $this->data['User']['lastname'];
//userfields
$newuser->set_userfields($userfields);
if($this->data['User']['password']!=$this->data['User']['retype_password']){
$newuser->errors[] = 'password_error';
}
if(!$newuser->errors){
if($newuserid = $newuser->save()){
echo 'success';exit;
}
}
After doing some searching, we found that the error is generated in the function
build_options in
includes/adminfunctions.php. This function is called in
includes/class_core.php in the function
check_options.
Does anybody have an idea what could be the problem. It seems that because of some changes in the settings (or something like that), we lost our database-object but didn't change anything to the code itself.