CMD:register(playerid,params[])
{
if(PInfo[playerid][Logged] == 1)
return SendClientMessage(playerid,COL_GREEN,"» "CWHITE"You are already registered and logged in!");
new szPassword[24];
if(sscanf(params,"s[24]",szPassword)) return SendClientMessage(playerid,COL_BLUE,"USAGE: "CWHITE"/register (password)");
new szPass[24];
mysql_real_escape_string(szPassword,szPass);
new PIP[16],TempQuery[450], day, month, year, hour, minute, second;
GetPlayerIp(playerid,PIP,16);
getdate(year,month,day);
gettime(hour,minute,second);
format(TempQuery, sizeof TempQuery,"INSERT INTO `"Users_Table"` (Username, Password, IP, Money, Score, Level, NitroType, Autofix, Fightstyle, SkinID, SB, AcceptPM, Kills, Deaths, Hours, Mins, Goto, Regged, LastOn) VALUES ('%s', sha1('%s'), '%s', '%i', '%i', '0', '0', '0', '0', '-1', '1', '1', '%i', '%i', '0', '0', '%i', '%02d.%02d.%02d','%02d.%02d.%02d at %02d:%02d:%02d')",
GetPName(playerid),szPass,PIP,GetPlayerMoney(playerid),GetPlayerScore(playerid), PInfo[playerid][Kills],PInfo[playerid][Deaths],
PInfo[playerid][GotoToggle], day,month,year,day,month,year,hour,minute,second);
if(mysql_query(TempQuery))
SendClientMessage(playerid,COL_GREEN,"You have been successfully registered!"),PlaySound(playerid,1057);
else
SendClientMessage(playerid,COL_RED,"Some error occured while registering! Please contact the administrators.");
PInfo[playerid][Logged] = 1;
PInfo[playerid][Regged] = 1;
PInfo[playerid][Skin] = -1;
GameTextForPlayer(playerid,"~g~~h~You have received: ~n~~r~~h~+$5000 ~n~~r~~h~1000 score",5000,3);
GivePlayerMoney(playerid,5000);
SetPlayerScore(playerid,GetPlayerScore(playerid)+1000);
ShowPlayerDialog(playerid,Emaildialog,1,"Email",""CWHITE"For security reason, we ask you to put in an email so you can recover your password in the future: \n","Accept","No Email");
return 1;
}
CMD:register(playerid,params[])
{
if(PInfo[playerid][Logged] == 1)
return SendClientMessage(playerid,COL_GREEN,"» "CWHITE"You are already registered and logged in!");
new szPassword[24];
if(sscanf(params,"s[24]",szPassword)) return SendClientMessage(playerid,COL_BLUE,"USAGE: "CWHITE"/register (password)");
new szPass[24];
mysql_real_escape_string(szPassword,szPass);
new PIP[16],TempQuery[450], day, month, year, hour, minute, second;
GetPlayerIp(playerid,PIP,16);
getdate(year,month,day);
gettime(hour,minute,second);
format(TempQuery, sizeof TempQuery,"INSERT INTO `"Users_Table"` (Username, Password, IP, Money, Score, Level, NitroType, Autofix, Fightstyle, SkinID, SB, AcceptPM, Kills, Deaths, Hours, Mins, Goto, Regged, LastOn) VALUES ('%s', sha1('%s'), '%s', '%i', '%i', '0', '0', '0', '0', '-1', '1', '1', '%i', '%i', '0', '0', '%i', '%02d.%02d.%02d','%02d.%02d.%02d at %02d:%02d:%02d')",
GetPName(playerid),szPass,PIP,GetPlayerMoney(playerid),GetPlayerScore(playerid), PInfo[playerid][Kills],PInfo[playerid][Deaths],
PInfo[playerid][GotoToggle], day,month,year,day,month,year,hour,minute,second);
if(mysql_query(TempQuery))
SendClientMessage(playerid,COL_GREEN,"You have been successfully registered!"),PlaySound(playerid,1057);
else
SendClientMessage(playerid,COL_RED,"Some error occured while registering! Please contact the administrators.");
PInfo[playerid][Logged] = 1;
PInfo[playerid][Regged] = 1;
PInfo[playerid][Skin] = -1;
GameTextForPlayer(playerid,"~g~~h~You have received: ~n~~r~~h~+$5000 ~n~~r~~h~1000 score",5000,3);
GivePlayerMoney(playerid,5000);
SetPlayerScore(playerid,GetPlayerScore(playerid)+1000);
ShowPlayerDialog(playerid,Emaildialog,1,"Email",""CWHITE"For security reason, we ask you to put in an email so you can recover your password in the future: \n","Accept","No Email");
return 1;
}
if(strcmp(cmd, "/register", true) == 0)
{
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0) return SendClientMessage(playerid, ERROR, "Use: /register [PASSWORD]");
format(file,sizeof(file),"%s.ini", name);
if(!fexist(file))
{
dini_Create(file);
dini_IntSet(file, "Password", udb_hash(tmp));
dini_IntSet(file, "Money", 2500);
dini_IntSet(file, "Score", 1);
dini_IntSet(file, "Bank", 1000);
dini_IntSet(file, "RobSkill", 1);
dini_IntSet(file, "TerSkill", 1);
dini_IntSet(file, "Admin", 0);
dini_IntSet(file, "Warnings", 0);
dini_IntSet(file, "WantedLevel", 0);
dini_IntSet(file, "Jail", 0);
dini_IntSet(file, "RentalOwner", 0);
dini_IntSet(file, "Drugs", 0);
dini_IntSet(file, "C4", 0);
dini_IntSet(file, "Skin", 0);
SendClientMessage(playerid, GREY, "Thanks for registering!");
SendClientMessage(playerid, GREY, "You may now login.");
SendClientMessage(playerid, GREY, "To do so, type: /login [PASSWORD]");
GameTextForPlayer(playerid, "~r~Registered!", 3000, 1);
}
else SendClientMessage(playerid, ERROR, "This account is already registered in our system. Use: /login [PASSWORD]");
return true;
}
if(strcmp(cmd, "/login", true) == 0)
{
new tmp2[256];
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0) return SendClientMessage(playerid, ERROR, "Use: /login [PASSWORD]");
else
{
if(IsPlayerLogged[playerid] == 1) return SendClientMessage(playerid, ERROR, "You are already logged in.");
else
{
if(fexist(file))
{
tmp2 = dini_Get(file, "Password");
if(udb_hash(tmp) != strval(tmp2)) return SendClientMessage(playerid, ERROR, "Invalid password.");
else
{
IsPlayerLogged[playerid] = 1;
SetPlayerMoney(playerid, dini_Int(file, "Money"));
SetPlayerScore(playerid, dini_Int(file, "Score"));
PlayerSkin[playerid] = dini_Int(file,"Skin");
SetPlayerWantedLevel(playerid, dini_Int(file, "WantedLevel"));
SendClientMessage(playerid, GREEN, "You are now logged in.you have continue your stats has been automatique saved.");
GameTextForPlayer(playerid, "~r~Logged In!", 3000, 1);
}
}
else return SendClientMessage(playerid, ERROR, "This username was not found on our database. Use: /register [PASSWORD]");
}
}
return true;
}
|
try this n tell me if it worked :
PHP код:
|