Problem mit Login 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
  • moin,


    Ich bin noch recht neu und habe mich mal an einem Login system versucht, allerdings habe ich jetzt 4 Errors und ein warning


    Error Code:

    PHP
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(277) : warning 202: number of arguments does not match definition
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(299) : error 017: undefined symbol "Playerdatei"C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(299) : error 017: undefined symbol "Playerdatei"
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(299) : error 029: invalid expression, assumed zero
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(299) : fatal error 107: too many error messages on one line
    Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    4 Errors.


    Zeile 277: 4 ist Zeile 277

    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,Rot,"Dein Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_PASSWORD,"Alpha Status\n Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;


    Zeile 299: 6 ist Zeile 299

    stock Register(playerid,key[])
    {
    new Spielerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.ini",name);
    dini_Create(Playerdatei);
    dini_Set(Playerdatei,"Passwort",key);
    dini_Set(Playerdatei,"Admin",0);
    SetPlayerScore(playerid,0);
    SetPVarInt(playerid,0);
    return 1;
    }

  • Hallo,


    bei dem ersten Warning, weist der Compiler dich darauf hin, dass du mehr oder weniger Parameter angegeben hast, als nötig/vorgeschrieben sind. Bei dir fehlt einfach noch der Titel des Dialogs.


    => ShowPlayerDialog


    Bei den anderen Errors ganz unten hast du einmal Spielerdatei definiert aber verwenden tust du Playerdatei.


  • stock Register(playerid,key[])
    {
    new Spielerdatei[128]; //hier hast du Spielerdatei definiert,
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Playerdatei,sizeof(Playerdatei),"/Accounts/%s.ini",name); //und hier hast du Playerdatei angegeben, also Playerdatei in Spielerdatei ändern
    dini_Create(Playerdatei);
    dini_Set(Playerdatei,"Passwort",key);
    dini_Set(Playerdatei,"Admin",0);
    SetPlayerScore(playerid,0);
    SetPVarInt(playerid,0);
    return 1;
    }



    if(!strlen(inputtext))
    {
    SendClientMessage(playerid,Rot,"Dein Passwort war nicht lang genug.");
    ShowPlayerDialog(playerid,2,DIALOG_STYLE_PASSWORD,"Alpha Status\n Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen"); //vor "DIALOG_STYLE_PASSWORD" musst du, "DIALOG_LOGIN" setzen, also anstatt die 2 "DIALOG_LOGIN"
    return 1;
    }
    else
    {
    Register(playerid,inputtext);
    return 1;

  • Doch, die "2", die ersetzt du um nen besseren Überblick zu erhalten durch dein "DIALOG_...." das du oben im Script definiert hast, und dort sind noch ein paar Fehler, ich zeig dir jetzt mal die Lösung:

    ShowPlayerDialog(playerid,DIALOG_LOGIN/*Hast du oben im Script definiert*/,DIALOG_STYLE_PASSWORD,"Alpha Status"/*Die Überschrift des Dialoges*/,"Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");


    Guck dir das mal an, dann verstehst du es auch :) --> ShowPLayerDialog
    Struktur:

    ShowPlayerDialog(playerid,Dein Dialog,Dialog Art,"Überschrift des Dialoges","Text des Dialoges","Kopf1","Knopf2");

    2 Mal editiert, zuletzt von firestormZ ()

  • okay, du hast

    ShowPlayerDialog(playerid,2,DIALOG_STYLE_PASSWORD,"Alpha Status\n Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");


    gemacht, und anstatt die Zahl (rot makiert) gib lieber den vollständigen Dialog an, also DIALOG_REGISTER,
    dann sind wir schonmal bei:


    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Alpha Status\n Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");


    Dann hast du keine Überschrift also nur den Text "Alpha Status\n Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.":


    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Alpha Status\n Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");


    das musst du ändern, bzw. eine Überschrift "erfinden":


    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Alpha Status","Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");


    Die Lösung ist:

    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_PASSWORD,"Alpha Status","Registrier dich auf GTA-Server.de\n Bitte gib jetzt dein gewünschtes Passwort ein.","Abbrechen","Abbrechen");


  • Du sollst mir lieber sagen wiei ch die errors weg bekomme nciht wie ich am besten die dialoge schreibe


  • stock Register(playerid,key[])
    {
    new Spielerdatei[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.ini",name);
    dini_Create(Playerdatei);
    dini_Set(Spielerdatei,"Passwort",key);
    dini_Set(Spielerdatei,"Admin",0);
    SetPlayerScore(playerid,0);
    SetPVarInt(playerid,0);
    return 1;
    }

    Wenn ich das so mache kommen 10 errors

  • ne guck hier



    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(302) : error 035: argument type mismatch (argument 3)
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(304) : error 035: argument type mismatch (argument 2)
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(342) : error 001: expected token: "-string end-", but found "-identifier-"
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(342) : warning 215: expression has no effect
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(342) : error 001: expected token: ";", but found ")"
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(342) : error 029: invalid expression, assumed zero
    C:\Users\Mike\Desktop\Pawno_Sachen\gamemodes\DeathScript.pwn(342) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    6 Errors.