/login
#9

PHP код:
new thepass[30];
CMD:login(playeridparams[])
{
    if(
IsPlayerRegistered[playerid] == && MLogin[playerid] == false)
    {
        new 
query[280];
        if(
sscanf(params"u"thepass)) return SendClientMessage(playeridCOLOR_RED"* USAGE: /login [password]");

        
mysql_format(mysqlquerysizeof(query),"SELECT `IP`, `Password`, `ID` FROM `players` WHERE `Username` = '%e' LIMIT 1"GetName(playerid));
        
mysql_tquery(mysqlquery"Login""iu"playeridthepass);
    }
    return 
1;
}
forward Login(playeridpassword);
public 
Login(playeridpassword)
{
    if(
IsPlayerRegistered[playerid] == && MLogin[playerid] == true)
    {
        
SendClientMessage(playeridCOLOR_RED"* You are already logged in.");
    }
    
    if(
cache_num_rows() >= 1)
    {
        
cache_get_value_name(0"Password"pData[playerid][Password], 129);
        
cache_get_value_name_int(0"ID"pData[playerid][ID]);

        new 
hpass[129]; //for password hashing
        
new query[100]; // for formatting our query.
        
WP_Hash(hpass129thepass);
        if(!
strcmp(hpasspData[playerid][Password])) //remember we have loaded player's password into this variable, pData[playerid][Password] earlier. Now let's use it to compare the hashed password with password that we load
        
{
            
mysql_format(mysqlquerysizeof(query), "SELECT * FROM `players` WHERE `Username` = '%e' LIMIT 1"GetName(playerid));
            
mysql_tquery(mysqlquery"OnAccountLoad""i"playerid);
            
MLogin[playerid] = true;

        }
        else 
//if the hashed password didn't match with the loaded password(pData[playerid][Password])
        
{
            new 
tmp[128], str[280];
            
pInfo[playerid][WrongPass]++;
            
format(tmpsizeof(tmp), "9,2%s (ID: %d) tried to login using a wrong password"GetName(playerid), playerid);
            
IRC_GroupSay(groupIDIRC_aCHANNELtmp);
            
IRC_GroupSay(groupIDIRC_CHANNELtmp);
            
format(strsizeof(str), "* %s (ID: %d) tried to login using a wrong password"GetName(playerid), playerid);
            
SendClientMessage(playeridCOLOR_REDstr);
        }
    }
    else
    {
        
SendClientMessage(playeridCOLOR_RED"* You are not registered, use /register.");
    }
    return 
1;

it doesn't check if the password is the right one or not
Reply


Messages In This Thread
/login - by Loinal - 29.01.2018, 08:39
Re: /login - by Flamehaze7 - 29.01.2018, 08:45
Re: /login - by Loinal - 29.01.2018, 08:55
Re: /login - by Flamehaze7 - 29.01.2018, 09:03
Re: /login - by Loinal - 29.01.2018, 09:08
Re: /login - by Flamehaze7 - 29.01.2018, 09:11
Re: /login - by Banditul18 - 29.01.2018, 10:06
Re: /login - by Mugala - 29.01.2018, 12:34
Re: /login - by Loinal - 30.01.2018, 09:35
Re: /login - by Mugala - 30.01.2018, 09:51

Forum Jump:


Users browsing this thread: 2 Guest(s)