stock MySQL_Login(playerid)
{
new query[300], exec[256], string[256];
format(query, sizeof(query), "SELECT * FROM `Accounts` WHERE `Nick` = '%s'", GetName(playerid));
mysql_query(query);
mysql_store_result();
if(mysql_num_rows() > 0)
{
if(mysql_retrieve_row())
{
mysql_fetch_field_row(result,"Admin");
PlayerInfo[playerid][Admin] = strval(exec);
mysql_fetch_field_row(result,"Score");
PlayerInfo[playerid][Score] = strval(exec);
mysql_fetch_field_row(result,"Money");
PlayerInfo[playerid][Money] = strval(exec);
mysql_fetch_field_row(result,"Kills");
PlayerInfo[playerid][Kills] = strval(exec);
mysql_fetch_field_row(result,"Deaths");
PlayerInfo[playerid][Deaths] = strval(exec);
mysql_fetch_field_row(result,"Muted");
PlayerInfo[playerid][Muted] = strval(exec);
}
}
mysql_free_result();
GivePlayerMoney(playerid, PlayerInfo[playerid][Money]);
SetPlayerScore(playerid, PlayerInfo[playerid][Score]);
PlayerInfo[playerid][Login] = 1;
if(PlayerInfo[playerid][Admin] >= 1)
{
format(string, sizeof(string), "[ACCOUNT] "cwhite"Successfully Logged in. Welcome Admin. Your Level is %d",PlayerInfo[playerid][Admin]);
SCM(playerid, xgreen, string);
}
else
{
format(string, sizeof(string), "[ACCOUNT] "cwhite"Successfully Logged in.");
SCM(playerid, xgreen, string);
}
return 1;
}
#define SCM SendClientMessage
*_*
I said EVERYTHING is NOT working OTHER than the SCM(which means only SendClientMessage in that stock is working) and yeah I know its a bad scripting habit but..... |
stock MySQL_Login(playerid)
{
new query[300], exec[20], string[256];
format(query, sizeof(query), "SELECT * FROM `Accounts` WHERE `Nick` = '%s'", GetName(playerid));
mysql_query(query);
mysql_store_result();
if(mysql_num_rows() > 0)
{
if(mysql_retrieve_row())
{
mysql_fetch_field_row(exec,"Admin");
PlayerInfo[playerid][Admin] = strval(exec);
mysql_fetch_field_row(exec,"Score");
PlayerInfo[playerid][Score] = strval(exec);
mysql_fetch_field_row(exec,"Money");
PlayerInfo[playerid][Money] = strval(exec);
mysql_fetch_field_row(exec,"Kills");
PlayerInfo[playerid][Kills] = strval(exec);
mysql_fetch_field_row(exec,"Deaths");
PlayerInfo[playerid][Deaths] = strval(exec);
mysql_fetch_field_row(exec,"Muted");
PlayerInfo[playerid][Muted] = strval(exec);
}
}
mysql_free_result();
GivePlayerMoney(playerid, PlayerInfo[playerid][Money]);
SetPlayerScore(playerid, PlayerInfo[playerid][Score]);
PlayerInfo[playerid][Login] = 1;
if(PlayerInfo[playerid][Admin] >= 1)
{
format(string, sizeof(string), "[ACCOUNT] "cwhite"Successfully Logged in. Welcome Admin. Your Level is %d",PlayerInfo[playerid][Admin]);
SCM(playerid, xgreen, string);
}
else
{
format(string, sizeof(string), "[ACCOUNT] "cwhite"Successfully Logged in.");
SCM(playerid, xgreen, string);
}
return 1;
}
can somebody guide me with the fetch field since I dont really understand sscanf that well.
|
stock MySQL_Login(playerid)
{
new query[300], string[256];
format( query, sizeof( query ), "SELECT * FROM `Accounts` WHERE `Nick` = '%s'", GetName( playerid ) );
mysql_query( query );
mysql_store_result( );
if( mysql_num_rows( ) )
{
if(mysql_fetch_row_format(query, "|"))
{
sscanf(query, "p<|>iiiiii", PlayerInfo[playerid][Admin], PlayerInfo[playerid][Score], PlayerInfo[playerid][Money], PlayerInfo[playerid][Kills], PlayerInfo[playerid][Deaths], PlayerInfo[playerid][Muted]);
}
}
mysql_free_result( );
GivePlayerMoney( playerid, PlayerInfo[playerid][Money] ), SetPlayerScore( playerid, PlayerInfo[playerid][Score] );
PlayerInfo[ playerid ][ Login ] = 1;
if(PlayerInfo[playerid][Admin] >= 1)
{
format(string, sizeof(string), "[ACCOUNT] "cwhite"Successfully Logged in. Welcome Admin. Your Level is %d",PlayerInfo[playerid][Admin]);
SCM(playerid, xgreen, string);
}
else
{
format(string, sizeof(string), "[ACCOUNT] "cwhite"Successfully Logged in.");
SCM(playerid, xgreen, string);
}
return 1;
}
This should work sscanf version.
pawn Код:
|