Register && Login Fail

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 leute ich hab einen Bug und weis nicht warum,


    . Mein script bassiert auf .ini
    . Register klappt
    .login (jedes passwort wird angenommen)
    .Voher war das nicht so


    2. Problem


    Bei jedem Login komm bei der Spielerdatei von das Passwort ein y?


    scrren:














    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(dini_Exists(Spielerdatei))
    {
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Login","Hallo dein Account wurde gefunden, bitte lgge dich mit deinem Passwort ein","Login","Abbrechen");

    }
    else
    {


    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Regestrieren","Hallo dein Account wurde nicht gefunden, bitte gebe ein passwort um dich Rgestrieren","Regestrieren","Abbrechen");
    }



    if(dialogid == LOGIN)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,rot,"Du hast den LOGIN Vorgang abgebrochen!!!");
    Kick(playerid);
    }
    if(response == 1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,rot,"Das Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"LOGIN","Das von dir eingegebene Passwort war nicht lang genug!\nEs muss mindesten 1 Buchstabe sein!","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    }
    }
    if(dialogid == REGISTER)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,rot,"Du hast den Regestrier vorgang auf unserem server abbgebrochen!");
    SendClientMessage(playerid,weis,"Du wurdest gekickt!");
    Kick(playerid);
    return 1;
    }
    if(response == 1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,rot,"Das Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_PASSWORD,"Regestrieren","Das von dir eingegebene Passwort war nicht lang genug!\nEs muss mindesten 1 Buchstabe sein!","Regestrieren","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    }




    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,blau,"Du hast dich erfolgreich auf unserem Reallife server regestriert!!");


    SpawnPlayer(playerid);


    ResetVariablen(playerid);


    return 1;
    }
    stock Login(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    LoadAccount(playerid);
    SendClientMessage(playerid,blau,"Du hast dich erfolgreich auf unserem Reallife Server! eingeloggt!");
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,rot,"Das passwort ist inkorrekt!");
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Erweiterter Login","Hallo du du dein Passwort falsch eingegeben hast wird dir das passwort angezeigt","einloggen","Abbrechen");
    }
    return 1;
    }
    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));


    SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel");
    SpielerInfo[playerid][Fraktion]=dini_Int(Spielerdatei,"Fraktion");
    SpielerInfo[playerid][Rang] = dini_Int(Spielerdatei,"Rang");
    SpielerInfo[playerid][Banned] = dini_Int(Spielerdatei,"Banned");
    SpielerInfo[playerid][Job] = dini_Int(Spielerdatei,"Job");
    SpielerInfo[playerid][Fuehrerschein] = dini_Int(Spielerdatei,"FS");
    SpielerInfo[playerid][Motorradschein] = dini_Int(Spielerdatei,"Motorradschein");
    SpielerInfo[playerid][FLugschein] = dini_Int(Spielerdatei,"Flugschein");
    SpielerInfo[playerid][LKWSchein] = dini_Int(Spielerdatei,"LKWSchein");
    SpielerInfo[playerid][Bootschein] = dini_Int(Spielerdatei,"Bootschein");
    SpielerInfo[playerid][TUT] = dini_Int(Spielerdatei,"TUT");
    SpielerInfo[playerid][GS] = dini_Int(Spielerdatei,"GS");
    SpielerInfo[playerid][RG] = dini_Int(Spielerdatei,"RG");
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",SpielerInfo[playerid][Adminlevel]);
    dini_IntSet(Spielerdatei,"Fraktion",SpielerInfo[playerid][Fraktion]);
    dini_IntSet(Spielerdatei,"Rang",SpielerInfo[playerid][Rang]);
    dini_IntSet(Spielerdatei,"Banned",SpielerInfo[playerid][Banned]);
    dini_IntSet(Spielerdatei,"Job",SpielerInfo[playerid][Job]);
    dini_IntSet(Spielerdatei,"Führerschein",SpielerInfo[playerid][Fuehrerschein]);
    dini_IntSet(Spielerdatei,"Motorradschein",SpielerInfo[playerid][Motorradschein]);
    dini_IntSet(Spielerdatei,"Flugschein",SpielerInfo[playerid][FLugschein]);
    dini_IntSet(Spielerdatei,"LKWSchein",SpielerInfo[playerid][LKWSchein]);
    dini_IntSet(Spielerdatei,"Bootschein",SpielerInfo[playerid][Bootschein]);
    dini_IntSet(Spielerdatei,"TUT",SpielerInfo[playerid][TUT]);
    dini_IntSet(Spielerdatei,"GS",SpielerInfo[playerid][GS]);
    dini_IntSet(Spielerdatei,"RG",SpielerInfo[playerid][RG]);
    return 1;
    }


    stock ResetVariablen(playerid)
    {
    SpielerInfo[playerid][Adminlevel]=0;
    SpielerInfo[playerid][Fraktion]=0;
    SpielerInfo[playerid][Geld]=0;
    SetPlayerScore(playerid,1);
    SpielerInfo[playerid][TUT]=0;
    SpielerInfo[playerid][GS]=0;
    SpielerSpeichern(playerid);
    return 1;
    }

  • ja aber wenn ich das so mache dann kommt halt so was



    stock Register(playerid,key[]){ new Spielerdatei[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name); dini_Create(Spielerdatei); dini_Set(Spielerdatei,"Passwort",key); SendClientMessage(playerid,blau,"Du hast dich erfolgreich auf unserem Reallife server regestriert!!");
    SpawnPlayer(playerid); ResetVariablen(playerid); return 1;}stock Login(playerid,key[]){ new Spielerdatei[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name); if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false)) { LoadAccount(playerid); SendClientMessage(playerid,blau,"Du hast dich erfolgreich auf unserem Reallife Server! eingeloggt!"); SpawnPlayer(playerid); return 1; } else { SendClientMessage(playerid,rot,"Das passwort ist inkorrekt!"); ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Erweiterter Login","Hallo du du dein Passwort falsch eingegeben hast wird dir das passwort angezeigt","einloggen","Abbrechen"); } return 1;}stock LoadAccount(playerid){ new Spielerdatei[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name); SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level")); GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld")); SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel"); SpielerInfo[playerid][Fraktion]=dini_Int(Spielerdatei,"Fraktion"); SpielerInfo[playerid][Rang] = dini_Int(Spielerdatei,"Rang"); SpielerInfo[playerid][Banned] = dini_Int(Spielerdatei,"Banned"); SpielerInfo[playerid][Job] = dini_Int(Spielerdatei,"Job"); SpielerInfo[playerid][Fuehrerschein] = dini_Int(Spielerdatei,"FS"); SpielerInfo[playerid][Motorradschein] = dini_Int(Spielerdatei,"Motorradschein"); SpielerInfo[playerid][FLugschein] = dini_Int(Spielerdatei,"Flugschein"); SpielerInfo[playerid][LKWSchein] = dini_Int(Spielerdatei,"LKWSchein"); SpielerInfo[playerid][Bootschein] = dini_Int(Spielerdatei,"Bootschein"); SpielerInfo[playerid][TUT] = dini_Int(Spielerdatei,"TUT"); SpielerInfo[playerid][GS] = dini_Int(Spielerdatei,"GS"); SpielerInfo[playerid][RG] = dini_Int(Spielerdatei,"RG"); return 1;}
    stock SpielerSpeichern(playerid){ new Spielerdatei[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name); dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid)); dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid)); dini_IntSet(Spielerdatei,"Adminlevel",SpielerInfo[playerid][Adminlevel]); dini_IntSet(Spielerdatei,"Fraktion",SpielerInfo[playerid][Fraktion]); dini_IntSet(Spielerdatei,"Rang",SpielerInfo[playerid][Rang]); dini_IntSet(Spielerdatei,"Banned",SpielerInfo[playerid][Banned]); dini_IntSet(Spielerdatei,"Job",SpielerInfo[playerid][Job]); dini_IntSet(Spielerdatei,"Führerschein",SpielerInfo[playerid][Fuehrerschein]); dini_IntSet(Spielerdatei,"Motorradschein",SpielerInfo[playerid][Motorradschein]); dini_IntSet(Spielerdatei,"Flugschein",SpielerInfo[playerid][FLugschein]); dini_IntSet(Spielerdatei,"LKWSchein",SpielerInfo[playerid][LKWSchein]); dini_IntSet(Spielerdatei,"Bootschein",SpielerInfo[playerid][Bootschein]); dini_IntSet(Spielerdatei,"TUT",SpielerInfo[playerid][TUT]); dini_IntSet(Spielerdatei,"GS",SpielerInfo[playerid][GS]); dini_IntSet(Spielerdatei,"RG",SpielerInfo[playerid][RG]); return 1;}
    stock ResetVariablen(playerid){ SpielerInfo[playerid][Adminlevel]=0; SpielerInfo[playerid][Fraktion]=0; SpielerInfo[playerid][Geld]=0; SetPlayerScore(playerid,1); SpielerInfo[playerid][TUT]=0; SpielerInfo[playerid][GS]=0; SpielerSpeichern(playerid); return 1;}

  • new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(dini_Exists(Spielerdatei))
    {
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_PASSWORD,"Login","Hallo dein Account wurde gefunden, bitte lgge dich mit deinem Passwort ein","Login","Abbrechen");

    }
    else
    {


    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Regestrieren","Hallo dein Account wurde nicht gefunden, bitte gebe ein passwort um dich Rgestrieren","Regestrieren","Abbrechen");
    }




    if(dialogid == LOGIN)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,rot,"Du hast den LOGIN Vorgang abgebrochen!!!");
    Kick(playerid);
    }
    if(response == 1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,rot,"Das Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"LOGIN","Das von dir eingegebene Passwort war nicht lang genug!\nEs muss mindesten 1 Buchstabe sein!","Login","Abbrechen");
    return 1;
    }
    else
    {
    Login(playerid,inputtext);
    return 1;
    }
    }
    }
    if(dialogid == REGISTER)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,rot,"Du hast den Regestrier vorgang auf unserem server abbgebrochen!");
    SendClientMessage(playerid,weis,"Du wurdest gekickt!");
    Kick(playerid);
    return 1;
    }
    if(response == 1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,rot,"Das Passwort war nicht lang genug!");
    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_PASSWORD,"Regestrieren","Das von dir eingegebene Passwort war nicht lang genug!\nEs muss mindesten 1 Buchstabe sein!","Regestrieren","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;
    }
    }
    }



    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_Create(Spielerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    SendClientMessage(playerid,blau,"Du hast dich erfolgreich auf unserem Reallife server regestriert!!");


    SpawnPlayer(playerid);

    ResetVariablen(playerid);

    return 1;
    }
    stock Login(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
    {
    LoadAccount(playerid);
    SendClientMessage(playerid,blau,"Du hast dich erfolgreich auf unserem Reallife Server! eingeloggt!");
    SpawnPlayer(playerid);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,rot,"Das passwort ist inkorrekt!");
    ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Erweiterter Login","Hallo du du dein Passwort falsch eingegeben hast wird dir das passwort angezeigt","einloggen","Abbrechen");
    }
    return 1;
    }
    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));

    SpielerInfo[playerid][Adminlevel]=dini_Int(Spielerdatei,"Adminlevel");
    SpielerInfo[playerid][Fraktion]=dini_Int(Spielerdatei,"Fraktion");
    SpielerInfo[playerid][Rang] = dini_Int(Spielerdatei,"Rang");
    SpielerInfo[playerid][Banned] = dini_Int(Spielerdatei,"Banned");
    SpielerInfo[playerid][Job] = dini_Int(Spielerdatei,"Job");
    SpielerInfo[playerid][Fuehrerschein] = dini_Int(Spielerdatei,"FS");
    SpielerInfo[playerid][Motorradschein] = dini_Int(Spielerdatei,"Motorradschein");
    SpielerInfo[playerid][FLugschein] = dini_Int(Spielerdatei,"Flugschein");
    SpielerInfo[playerid][LKWSchein] = dini_Int(Spielerdatei,"LKWSchein");
    SpielerInfo[playerid][Bootschein] = dini_Int(Spielerdatei,"Bootschein");
    SpielerInfo[playerid][TUT] = dini_Int(Spielerdatei,"TUT");
    SpielerInfo[playerid][GS] = dini_Int(Spielerdatei,"GS");
    SpielerInfo[playerid][RG] = dini_Int(Spielerdatei,"RG");
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",SpielerInfo[playerid][Adminlevel]);
    dini_IntSet(Spielerdatei,"Fraktion",SpielerInfo[playerid][Fraktion]);
    dini_IntSet(Spielerdatei,"Rang",SpielerInfo[playerid][Rang]);
    dini_IntSet(Spielerdatei,"Banned",SpielerInfo[playerid][Banned]);
    dini_IntSet(Spielerdatei,"Job",SpielerInfo[playerid][Job]);
    dini_IntSet(Spielerdatei,"Führerschein",SpielerInfo[playerid][Fuehrerschein]);
    dini_IntSet(Spielerdatei,"Motorradschein",SpielerInfo[playerid][Motorradschein]);
    dini_IntSet(Spielerdatei,"Flugschein",SpielerInfo[playerid][FLugschein]);
    dini_IntSet(Spielerdatei,"LKWSchein",SpielerInfo[playerid][LKWSchein]);
    dini_IntSet(Spielerdatei,"Bootschein",SpielerInfo[playerid][Bootschein]);
    dini_IntSet(Spielerdatei,"TUT",SpielerInfo[playerid][TUT]);
    dini_IntSet(Spielerdatei,"GS",SpielerInfo[playerid][GS]);
    dini_IntSet(Spielerdatei,"RG",SpielerInfo[playerid][RG]);
    return 1;
    }


    stock ResetVariablen(playerid)
    {
    SpielerInfo[playerid][Adminlevel]=0;
    SpielerInfo[playerid][Fraktion]=0;
    SpielerInfo[playerid][Geld]=0;
    SetPlayerScore(playerid,1);
    SpielerInfo[playerid][TUT]=0;
    SpielerInfo[playerid][GS]=0;
    SpielerSpeichern(playerid);
    return 1;
    }

  • Ich weiß nicht ob es dir hilft aber ich frage meine Passwörter immer so ab:

    new pwlength = strlen(inputtext);
    if(pwlength > 0)
    {
    new pw[200];
    format(pw, sizeof(pw), "%s", dini_Get(path, "password"));
    if(strcmp(inputtext, pw) == 0)
    {


    Erfahrung ist der beste Lehrmeister. Nur das Schulgeld ist teuer.
    Thomas Carlyle (1795-1881)