PDA

View Full Version : hmmm, i cant understand this error


White_Snake
09-05-2005, 06:09 PM
yeah its me again o_O

well, now i have worked more on my code and :

Fatal error: Call to a member function on a non-object in /home/whitesnake/public_html/myvbulletintestsite/includes/class_dm_user.php(1414) : eval()'d code on line 2

this is the code of my plugin:
Hook : userdata_presave

// read the values on user.membergroupids so an array can be created
$membergroupidsarray = $db->query_frist("
SELECT membergroupids
FROM " .TABLE_PREFIX. "user
WHERE userid = '" . $vbulletin->userinfo['userid'] . "'
");

// chech the value on userfield.field5

$leeuserfield = $db->query_first("
SELECT field5
FROM " . TABLE_PREFIX . "userfield
WHERE userid = '" . $vbulletin->userinfo['userid'] . "'
");

// looks if user has choosen the value A on userfield.field5 and loads the created array with a new value on the array containing the value with all the secondary usergroups of the user and if a wasnt choose, it acts for case B

if ($user == 'A' AND $vbulletin->userinfo['posts']== '15')
{
$membergroupidsarray[]='9';
$db->query_frist("
UPDATE ".TABLE_PREFIX."user
SET membergroupids=".$membergroupidsarray."
WHERE userid = '" .$vbulletin->userinfo['userid']. "'
");
}
if ($user == 'B' AND $vbulletin->userinfo['posts']== '15')
{
$membergroupidsarray[]='10';
$db->query_frist("
UPDATE ".TABLE_PREFIX."user
SET membergroupids=".$membergroupidsarray."
WHERE userid = '" .$vbulletin->userinfo['userid']. "'
");
}


help is very apreciated :)

Andreas
09-05-2005, 06:26 PM
That Code makes no sense at all :)

1) membergroupids is availale in this Hook as $this->fetch_field('membergroupids'), no need for a Query.
2) Same goes for field5: $this->fetch_field('field5')
3) You don't have to execute Queries to set fields, just use $this->set('fieldname', 'value')
4) $vbulletin isn't within the Scope, $db also

Didn't I post Code that does smth. very similar for you in another Thread?

White_Snake
09-05-2005, 06:37 PM
That Code makes no sense at all :)

1) membergroupids is availale in this Hook as $this->fetch_field('membergroupids'), no need for a Query.
2) Same goes for field5: $this->fetch_field('field5')
3) You don't have to execute Queries to set fields, just use $this->set('fieldname', 'value')
4) $vbulletin isn't within the Scope, $db also

Didn't I post Code that does smth. very similar for you in another Thread?

thanks for your reply


well, about the code you post, i wasnt sure if you code does db modifications
but well in fact on that thread , i asked for help about the function "$this->fetch_field" cause im not sure how it works, but when i posted, the post prevented doubleposting but well, but well that is not going to happend here

so, im not sure what you mean with the point 4, the other 3 i can understand em

thanks for your time :)

EDIT

well looks like everything is going allright now that i have checked the other code and this one