Hallo
Ich habe eine MySql Login System. Das problem ist wenn man sich einloggt kann man jedes pw eingeben also z.B. l obwohl das pw opfa ist oder so also man kann ürgendwas eingeben udn posswort ist richtig wieso weis ich nicht
//--------------Login/register------------
if(dialogid == reg)
{
if(!response)
{
SendClientMessage(playerid,COLOR_RED,"[PsychoSys]Die Registrieren wurde abgebrochen.");
Kick(playerid);
return 1;
}
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
CreateAccount(playerid, inputtext);
ShowPlayerDialog(playerid,DIALOG_REGSTEP_1,DIALOG_STYLE_MSGBOX,"Geschlecht","Bist du Männlich oder Weiblich?","Männlich","Weiblich");
loggedin[playerid] = true;
return 1;
}
else if(dialogid == login)
{
if(!response)
{
SendClientMessage(playerid,COLOR_RED,"[PsychoSys]Das Einloggen wurde abgebrochen.");
Kick(playerid);
return 1;
}
new name[128];
GetPlayerName(playerid,name,sizeof(name));
if(!strcmp(inputtext, mysql_ReturnPasswort(name), true))
{
loggedin[playerid] = true;
SendClientMessage(playerid,COLOR_GREEN,"*** [PsychoSys]Erfolgreich eingeloggt. ***");
LoadPlayer(playerid);
StopPlayerMusic();
SetPlayerSkin(playerid,pDaten[playerid][Skin]);
if(mjobtime[playerid] >= 1)
{
mjobtimerr = SetTimer("MullmanJobTimer", 1000, 1);
}
return 1;
}
else
{
SendClientMessage(playerid,COLOR_RED,"[PsychoSys]Passwort ist Falsch!");
new msg[200];
format(msg,sizeof(msg),"Falsches Passwort.\n\nDu kannst dich jetzt einloggen.\nGib bitte dein Passwort ein.");
ShowPlayerDialog(playerid, login,DIALOG_STYLE_INPUT, "Einloggen:", msg, "Bestätigen", "Abbrechen");
return 1;
}
}
stock CreateAccount(playerid, pass[])
{
new query[256],Nameee[MAX_PLAYER_NAME];
GetPlayerName(playerid, Nameee, MAX_PLAYER_NAME);
mysql_real_escape_string(Nameee,Nameee);
mysql_real_escape_string(pass,pass);
format(query, sizeof(query), "INSERT INTO accounts (Name, Passwort) VALUES ('%s', MD5('%s'))", Nameee, pass);
mysql_query(query);
return true;
}
stock mysql_ReturnPasswort(Namee[])
{
new query[130], Get[130];
mysql_real_escape_string(Namee, Namee);
format(query, 128, "SELECT passwort FROM accounts WHERE Name = MD5('%s')", Namee);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(Get);
mysql_free_result();
return Get;
}
Habe keine ahnung wieso das nicht geht. ist mir nehmlich garde aufgefallen wo ich eine bustabe vergessen habe das er mich eingeloggt hat
Edit;
Meine vermutung ist auf die abfrage ob das pw falsch oder richtig ist der fragt ja gar net ab der macht einfach was danach kommt
Edit 2:
Code aktuallsert