MySQL Bug
#1

Anyone with an ID above 0 in my server doesn't get their stats loaded from the MySQL database. A player connects, logs in with a dialog and then stats are supposed to load from MySQL into player variables, but this only works if your ID is 0. I can't figure it out and every time I've asked so far I've been ignored because I assume no one knows the answer. Does anybody know what's up, or do I need to rewrite my entire login/register system?

ALSO: When I restart my server, everyone's stats are saved, but then looking at the MySQL log, there seems to be a constant loop that saves stats until the server is back online:

Код:
[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.

[20:02:02] >> mysql_query( Connection handle: 1 )

[20:02:02] CMySQLHandler::Query(UPDATE players SET ip='', level=0, score=0, kills=0, deaths=0, money=0, vehiclepass=0 WHERE name = '') - Successfully executed.
Reply
#2

Write your onplayerconnect part where the mysql query is called
Reply
#3

Quote:
Originally Posted by Siralos
Посмотреть сообщение
Write your onplayerconnect part where the mysql query is called
my OnPlayerConnect:
pawn Код:
new Query[80], pName[24], string[300];

GetPlayerName(playerid, pName, 24);

format(Query, sizeof(Query), "SELECT name FROM players WHERE name = '%s' LIMIT 1;", pName);
mysql_query(Query);
mysql_store_result();

if(mysql_num_rows() != 0)
{
     format(string, sizeof(string),
      "{99FF00}Welcome back, {FFFFFF}%s! {99FF00}\nPlease enter your password to login.\n\n{FFFFFF}If this isn't your account, switch your name by clicking 'Switch' below.", pName);
     ShowPlayerDialog(playerid, 0, DIALOG_STYLE_PASSWORD, "{FFFFFF}Login", string, "Login", "Switch");
}
else
{
     format(string, sizeof(string),
      "{99FF00}Welcome, {FFFFFF}%s! \n{99FF00}This account is not registered. {FFFFFF}\nPlease enter a password to register or switch accounts using the 'Switch' button.",pName);
     ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Register", string, "Register", "Switch");
}
mysql_free_result();
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)