Login/Registersystem deffekt?

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo, also mein Problem ist, immer wenn ich mich einloggen will, egal mit welchen passwort, kann ich rein z.B Ich erstelle ein Nick: ID: Jamal PW: 12345
    ich logge mich anschließend aus und starte wieder den server, will wieder mit Jamal rein und gebe bei Passwort: f3inwa ein dann kann ich trotzdem in den Acc rein, es prüft nicht ob das Passwort richtig ist, man kann mit jeden passwort rein in jeden Account ;( Bitte helft mir




    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == login)
    {
    if(response == 1)
    {
    new Spielerdatei[256];
    new SpielerName[MAX_PLAYER_NAME];
    if(!strlen(inputtext))return ShowPlayerDialog(playerid, login, DIALOG_STYLE_INPUT, "[GcR] Logge dich ein!", " ", "Login!", "Abbrechen!");
    GetPlayerName(playerid,SpielerName,sizeof(SpielerName));
    format(Spielerdatei,sizeof(Spielerdatei),"/madAd/Users/%s.ini",SpielerName);
    SpielerInfo[playerid][Passwort] = strval(dini_Get(Spielerdatei,"Passwort"));
    if(strcmp(inputtext,SpielerInfo[playerid][Passwort],false) == 0)
    {
    Anmelden(playerid);
    }
    else
    {
    FalschesPasswort[playerid] += 1;
    PasswortFalsch(playerid);
    }
    }
    }


    if(dialogid == regis)
    {
    if(response == 1)
    {
    new Spielerdatei[256];
    new SpielerName[MAX_PLAYER_NAME];
    SpielerInfo[playerid][alvl] = 0;
    GetPlayerName(playerid,SpielerName,sizeof(SpielerName));
    format(Spielerdatei,sizeof(Spielerdatei),"/madAd/Users/%s.ini",SpielerName);
    dini_Create(Spielerdatei);
    if(!strlen(inputtext))return ShowPlayerDialog(playerid, regis, DIALOG_STYLE_INPUT, "[GcR] Registriere dich!", " ", "Registrieren!", "Abbrechen!");
    dini_Set(Spielerdatei,"Passwort",inputtext);
    dini_IntSet(Spielerdatei,"Wanteds",SpielerInfo[playerid][Wanteds]);
    dini_IntSet(Spielerdatei,"Geld",SpielerInfo[playerid][Geld]);
    dini_IntSet(Spielerdatei,"AdminLevel",SpielerInfo[playerid][alvl]);
    new GlueckWunschText[256];
    format(GlueckWunschText,sizeof(GlueckWunschText),"[GcR] Du hast dich erfolgreich mit den Name : %s und dem Passwort : %s registriert",SpielerName,inputtext);
    SendClientMessage(playerid,Rot,GlueckWunschText);
    Anmelden(playerid);
    SendClientMessage(playerid,Rot,"[GcR] Du wurdest automatisch eingloggt!");
    }
    }

  • SpielerInfo[playerid][Passwort] = strval(dini_Get(Spielerdatei,"Passwort"));


    Ups...

    SpielerInfo[playerid][Passwort] = dini_Get(Spielerdatei, "Passwort");


    Du willst da doch keine Zahl haben :D




    (wenn jetzt ein Fehler mit "Tag" kommt, mach bei dem SpielerInfo Enum einfach bei Passwort ein [100] o.ä. hinter)
    (wenn du nicht weißt was ich meine, versuch das:)
    Ersetz:
    SpielerInfo[playerid][Passwort] = strval(dini_Get(Spielerdatei,"Passwort"));
    if(strcmp(inputtext,SpielerInfo[playerid][Passwort],false) == 0)
    durch:
    if(!strcmp(inputtext, dini_Get(Spielerdatei, "Passwort"), false))
    (überspringt das zwischenspeichern)

    Miete mich (nicht) :love: