PDA

View Full Version : Store add-on - remove warning points - help needed!


X-Fan
09-11-2003, 01:51 PM
G'day all,

I tried modifying a few existing hacks to create an add-on for Lesane's store wherein a user could pay to have a warning point removed (from g-force2k2's Warning Hack), but I've hit a snag wherein the check to see if a user has any points and giving them an error screen if they don't isn't working.

Here's the code:


$warns = $DB_site->query_first("SELECT warninglvl FROM user WHERE userid='$bbuserinfo[userid]'");
if ($warns <= 0) {
eval("standarderror(\"".gettemplate('store_removewarn_error')."\");");
}


Any idea why that's not working?

Also, here's the code I've got for removing the point. Not sure if it works or not as I haven't got that far, but comments would be appreciated, thanks!


if ($cost>$points) {
eval("standarderror(\"".gettemplate('store_error')."\");");
} else {
$DB_site->query("UPDATE user SET warninglvl=warninglvl-1,storep=storep-$cost WHERE userid='$bbuserinfo[userid]'");
$changestorenow = $DB_site->query("UPDATE store SET sold=sold+1 WHERE action='removewarn'");
$moneycheck = $DB_site->query_first("SELECT storep FROM user WHERE userid=$bbuserinfo[userid]");
$money = $moneycheck[storep];
eval("dooutput(\"".gettemplate("store_removewarn_done")."\");");
}
}

N9ne
09-14-2003, 09:56 AM
$warns = $DB_site->query_first("SELECT warninglvl FROM user WHERE userid=$bbuserinfo[userid]");

$warns1 = $DB_site->fetch_array($warns);

if ($warns1['warninglvl'] < 1 or empty($warns1['warninglvl'])) {

eval("standarderror(\"".gettemplate('store_removewarn_error')."\");");

}

X-Fan
09-14-2003, 10:40 AM
Thanks N9ne, it came up with the warn_error template, but I got this error at the top of the page:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in db_mysql.php on line 149

N9ne
09-14-2003, 12:12 PM
What's line 149?

X-Fan
09-14-2003, 01:16 PM
$this->record = mysql_fetch_array($this->query_id);

Dean C
09-14-2003, 02:36 PM
N9ne why are fetching the array again. Query first does all the hard work for you ;)

Try this:


$warns = $DB_site->query_first("SELECT warninglvl FROM user WHERE userid=$bbuserinfo[userid]");

if ($warns['warninglvl'] < 1 or empty($warns1['warninglvl'])) {

eval("standarderror(\"".gettemplate('store_removewarn_error')."\");");

}

X-Fan
09-14-2003, 11:04 PM
Cool, that did it, thanks guys! :)

I'll write this up and post it in the Beta hacks forum, with thanks to you both, of course!

Dean C
09-15-2003, 09:56 AM
Your Welcome :)