Login/Register System

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 also ich habe folgendes Problem ,wenn ich ein Login/Register System erfolgreich ohne Errors scripte und dann im Game auf Register klicke steht da nicht "Du hast dich erfolgreich regestriert".
    Aber wenn ich dann auf abbrechen gehe werde ich gekickt also müsste das eigentlich funktionieren?!
    [pwn stock Register(playerid,key[]){ new Spielerdatei[64]; new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,sizeof(name)); format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name); dini_Create(Spielerdatei); dini_Set(Spielerdatei,"Passwort",key); SendClientMessage(playerid,COLOR_RED,"Du hast dich erfolgreich regestriert."); return 1;} [/pwn]

  • Ich weis ,dass bei mir einiges durcheinander ist ,dass liegt daran das ich noch ein Script Anfänger bin
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {


    if(dialogid==DIALOG_REGISTER)
    {
    if(response==0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast den Vorgang abgebrochen oder ein falsches Passwort angegeben.");
    Kick(playerid);
    return 1;
    }
    if(response==1)
    {


    if(!strlen(inputtext))

    SendClientMessage(playerid,COLOR_RED,"Das Passwort war nicht lang oder sicher genug.");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Gib bitte das gewünschte Passwort ein:","Register","Abbrechen");
    return 1;
    }
    else
    {


    Register(playerid,inputtext);
    return 1;
    }



    }




    if(dialogid==DIALOG_TUTORIAL)
    return 1;
    }

  • Moment, ich gucke mal schnell bei mir und editiere hier gleich, 1 Minute.
    if(dialogid == DIALOG_LOGIN)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Login Vorgang abgebrochen!");
    Kick(playerid);
    }
    if(response == 1)
    {
    if(!strlen(MD5_Hash(inputtext)))
    {
    SendClientMessage(playerid,ROT,"Das angegebene Passwort nicht korrekt!");
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Gib dein Passwort bitte korrekt ein!","Login","Abbrechen");
    return 1;
    }
    else if(!strcmp(MD5_Hash(inputtext),mysql_ReturnPasswort(SpielerName(playerid)), true))
    {
    GivePlayerMoney(playerid,SpielerInfo[playerid][Geld]);
    SetPlayerScore(playerid,SpielerInfo[playerid][Level]);
    return 1;
    } else
    {
    ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Das Passwort war leider falsch!\nGib unten dein korrektes Passwort ein!","Login","Abbrechen");
    }
    }
    }
    if(dialogid == DIALOG_REGISTER)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,ROT,"Du hast den Vorgang abgebrochen!");
    Kick(playerid);
    return 1;
    }
    if(response == 1)
    {
    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,ROT,"Dein angegebens Passwort war nicht lang genug!\nBitte versuche es erneut!");
    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Registerieren","Bitte registriere dich zunächst und wähle ein sicheres Passwort!","Register","Abbrechen");
    return 1;
    }
    else
    {
    CreateAccount(playerid,inputtext);
    return 1;
    }
    }
    }


    Okey hier, musst du aber etwas umschreiben.


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Du musst den Dialog vorher definieren, und du musst ggf. auf dein Script umschreiben, ich benutze MySQL, das wird zu Errors in deinem Script führen, wenn du ihn jetzt CP'st ^^


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Wie definiere ich die Zeilen?
    Ich bekomme diese Errors
    Zeile (49) : Die Anzahl der Parameter ist falsch
    Zeile (83) : Falsch eingerückt
    Zeile (152) : Falsch eingerückt
    Zeile (182) : Variable wurde falsch definiert (Float,Integer[...])
    Zeile (182) : Die Anzahl der Parameter ist falsch
    Zeile (182) : Die Anzahl der Parameter ist falsch
    Zeile (183) : Variable wurde falsch definiert (Float,Integer[...])
    Zeile (183) : Die Anzahl der Parameter ist falsch
    Zeile (396) : Falsch eingerückt
    Zeile (453) : Falsch eingerückt
    Zeile (470) : Falsch eingerückt
    Zeile (509) : Falsch eingerückt
    Zeile (571) : Unbekannte Variable : "DIALOG_Login"
    Zeile (579) : Falsch eingerückt
    Zeile (582) : Unbekannte Variable : "MD5_Hash"
    Zeile (585) : Falsch eingerückt
    Zeile (588) : Falsch eingerückt
    Zeile (588) : Unbekannte Variable : "MD5_Hash"
    Zeile (590) : Unbekannte Variable : "SpielerInfo"
    Zeile (590) : Befehl hat keinen Sinn
    Zeile (590) : Erwartete Zeichen ";", aber gefunden "]"
    Zeile (590) : Ungültiger Befehl
    Zeile (590) : Zuviele Fehler in einer Zeile

  • Ich habe doch geschrieben, dass du nicht Copy & Pasten sollst, man man man.


    Du musst das auf dein Script umschreiben und oben:


    #define DIALOG_LOGIN 2500 <-- Anpassen fallsvergeben (2500)


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Unbekannte Variable : "SpielerInfo" <- Gehört zu meinem Enum ^^
    "MD5_Hash" <-- Mein Hash für MySQL Datenbank xD


    Du musst es schon auf dini, oder was du benutzt umschreiben. :s


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Du hast auch kein Response für 1 (Register button) gescriptet, er erklärts doch, habe es genau so wie er, bloß mit Enum / MySQL bei mir gehts.


    Denn hast du wohl nicht richtig aufgepasst 8|


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen