Hey,
ich benutze das Register/Login System aus einem Tutorial.
Heute habe ich eine funktion eingebaut, das die Passwörter per MD5 verschlüsselt werden, die verschlüsselung klappt, jedoch beim Login kommt immer, das das Passwort falsch ist.
Könnt ihr mir helfen?
Hier der Code:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/spieler/%s.datei",pname);
if(response)
{
switch(dialogid) // dialogid auswählen
{
case DIALOG_LOGIN: // ID Login
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"bRL - Login","Bitte logge dich ein!","Weiter","Abbrechen");
return SendClientMessage(playerid,rot,"Kein Passwort angegeben!");
}
if(strcmp(dini_Get(accFormat,"Passwort"),MD5_Hash(inputtext)))
{
Spieler[playerid][team] = dini_Int(accFormat,"team");
Spieler[playerid][skin] = dini_Int(accFormat,"skin");
Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
Spieler[playerid][lastdrehung] = dini_Float(accFormat,"lastdrehung");
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
Spieler[playerid][eingeloggt] = 1;
//Lizenzen
Spieler[playerid][PKW] = dini_Int(accFormat,"PKW");
Spieler[playerid][Motorrad] = dini_Int(accFormat,"Motorrad");
Spieler[playerid][LKW] = dini_Int(accFormat,"LKW");
Spieler[playerid][Flugschein] = dini_Int(accFormat,"Flugschein");
Spieler[playerid][Helischein] = dini_Int(accFormat,"Helischein");
//Staatliche Firmen
Spieler[playerid][PD] = dini_Int(accFormat,"PD");
//Private Firmen
Spieler[playerid][Flugschule] = dini_Int(accFormat,"Flugschule");
Spieler[playerid][Fahrschule] = dini_Int(accFormat,"Fahrschule");
new betreten[100];
GetPlayerName(playerid,pname,sizeof pname);
format(betreten,sizeof(betreten),"%s hat den Server Betreten!",pname);
SendClientMessageToAll(grau,betreten);
SpawnPlayer(playerid);
}
else
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"bRL - Login","Bitte logge dich ein!","Weiter","Abbrechen");
SendClientMessage(playerid,rot,"Das Passwort war Falsch!");
}
}
case DIALOG_REG: // ID Registrieren
{
if(!strlen(inputtext)) // Text darf nicht = Null sein Null im Sinne von nichts
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"bRL - Registrierung","Bitte Registriere dich!","Weiter","Abbrechen");
return SendClientMessage(playerid,rot,"Das Passwort ist zu kurz!");
}
dini_Create(accFormat);
dini_Set(accFormat,"Passwort",MD5_Hash(inputtext));
Spieler[playerid][eingeloggt] = 1;
SendClientMessage(playerid,gruen,"Account wurde angelegt und du wurdest eingeloggt.");
new betreten[100];
GetPlayerName(playerid,pname,sizeof pname);
format(betreten,sizeof(betreten),"%s hat den Server Betreten!",pname);
}
}
}
else
{
switch(dialogid)
{
case DIALOG_LOGIN:ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"bRL - Login","Bitte logge dich ein!","Weiter","Abbrechen");
case DIALOG_REG:ShowPlayerDialog(playerid,DIALOG_REG,1,"bRL - Registrierung","Bitte Registriere dich!","Weiter","Abbrechen");
}
}
return 1;
}
mfg