Hilfe das Login Geht nicht richtig

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
    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 :thumbup:


    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

    3 Mal editiert, zuletzt von HoneyKing ()

  • ah ich dummi dachte das ist das pw
    wie mache ich das jetzt das das pw in md5 ausgelesen wird?

    Einmal editiert, zuletzt von HoneyKing ()

  • Ich habe es so gemacht das de Benutzername und das Passwort überprüft wird.


    format(Query,sizeof(Query),"SELECT * FROM `users` WHERE username='%s' AND password=MD5('%s')",escpname,escpass);
    mysql_query(Query);


    Edit:


    Musst halt nur deinen Sachen an passen

  • hmm irgendwie das selbe problem ich kann mir mit jedes pw einloggeen ob wenn opfa richtig ist kanste auch 1
    pi
    opfa1
    usw mache alle sist richtig in der db ist nur 1 acc
    //edit1/2
    So irgendwie ist das problem glaub ich nicht beim login sonder wo anders im script oder?
    weil eigendlich geht das ja. Auf eine Gm nur mit dem Login geht das habe es gestern bemerkt ich weis abe rnicht wo der bug auftrat also habe ich alle cmds ausklommentier und gegguckt ob die das waren. Nein sie waren es nicht
    Dialoge auskommentiert auser login und register. Sie waren das auch net. Hm was könnte e noch sein. habe irgend wie keine bugs gefunden error oder warnings kommen nicht


    //edit 3
    Habe alle sim script nach gegeguckt nix gefunden
    Das ist ein Drecks login system. Das will einfach nicht eghen
    //edit4 Text verändert

    7 Mal editiert, zuletzt von HoneyKing ()