Hi all,
bei mir funktioniert i-wie jedes Passwort beim Einloggen und ich hab nicht rausgefunden warum...
Wenn ich mich registriere wird das in der Spieler.ini gespeichert genau wie im GF, nur beim Einloggen geht halt jedes pw.
PHP
public WennSpielerEinloggt(playerid,password[])
{
new wString[64];
new wSpielerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, wSpielerName, sizeof(wSpielerName));
format(wString, sizeof(wString), "%s.ini", wSpielerName);
new File: UserFile = fopen(wString, io_read);
if(UserFile)
{
new PasswortDaten[256];
new keytmp[256], valtmp[256];
fread(UserFile,PasswortDaten,sizeof(PasswortDaten));
keytmp = ini_GetKey(PasswortDaten);
if(strcmp(keytmp,"Passwort",true) == 0)
{
valtmp = ini_GetValue(PasswortDaten);
strmid(SpielerInfo[playerid][pPasswort], valtmp, 0, strlen(valtmp)-1, 255);
}
if(strcmp(SpielerInfo[playerid][pPasswort],password,true) == 0)
{
new key[256],val[256];
new Data[256];
while(fread(UserFile,Data,sizeof(Data)))
{
key = ini_GetKey( Data );
if(strcmp(key,"Tode",true) == 0) { val = ini_GetValue(Data); SpielerInfo[playerid][pTode] = strval(val); }
if(strcmp(key,"Morde",true) == 0) { val = ini_GetValue(Data); SpielerInfo[playerid][pMorde] = strval(val); }
if(strcmp(key,"Geld",true) == 0) { val = ini_GetValue(Data); SpielerInfo[playerid][pGeld] = strval(val); }
if(strcmp(key,"Admin",true) == 0) { val = ini_GetValue(Data); SpielerInfo[playerid][pAdmin] = strval(val); }
if(strcmp(key,"Team",true) == 0) { val = ini_GetValue(Data); SpielerInfo[playerid][pTeam] = strval(val); }
if(strcmp(key,"EcKarte",true) == 0) { val = ini_GetValue(Data); SpielerInfo[playerid][pEcKarte] = strval(val); }
}
fclose(UserFile);
GivePlayerMoney(playerid,SpielerInfo[playerid][pGeld]);
gSpielerEingeloggt[playerid] = 1;
}
else
{
new loginstring[128];
new loginname[64];
GetPlayerName(playerid,loginname,sizeof(loginname));
format(loginstring,sizeof(loginstring),"Falsches Passwort\nBitte gebe das Richtige Passwort ein:",loginname);
ShowPlayerDialog(playerid,12347,DIALOG_STYLE_INPUT,"Login",loginstring,"Login","Abbrechen");
fclose(UserFile);
return 1;
}
}
return 1;
}
Alles anzeigen
PHP
if(dialogid == 12346 || dialogid == 12347)
{
if(strlen(inputtext))
{
strmid(tmppass, inputtext, 0, strlen(inputtext), 255);
Encrypt(tmppass);
WennSpielerEinloggt(playerid,tmppass);
}
else
{
new dLogString[128];
new dlSpielerName[64];
GetPlayerName(playerid,dlSpielerName,sizeof(dlSpielerName));
format(dLogString,sizeof(dLogString),"Falsches Passwort\nBitte gebe das richtige ein!",dlSpielerName);
}
}
Alles anzeigen
Sieht jmd den fehler?
In der Spieler.ini seh ich das das pw verschlüsselt eingetragen ist.
Mfg