[MYSQL] Dialog erscheint beim Connecten nicht

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
  • Hey Leute bin dabei mir nen Selfmade zu erstellen und habe nen Problem ich habe gerade den stock fürs speichern geschrieben für ca 100 variablen habe aus dem Tutorial
    Das Register und Login System drin. habe auch das Plugin aus dem Tut es lief alles bis ich nu noch von accounts(tabelle) umgeschrieben habe auf meine _Main(tabelle)


    Denn nu habe ich das Problem das wenn ich Connecte gar nciht erst der Dialog erscheint....


    stock CheckTabbellen() {
    mysql_query("CREATE TABLE IF NOT EXISTS _Main (`id` int(11) AUTO_INCREMENT, PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;");
    mysql_query("ALTER TABLE _Main ADD Name varchar(24) AUTO_INCREMENT");
    mysql_query("ALTER TABLE _Main ADD Passwort varchar(128) DEFAULT NULL");
    HIER KOMMEN NOCH MEHR....


    erstellen tut er die tabelle so wie ich es will


    Den Stock von CheckAccount habe ich wie gesagt nur das accounts auf _Main geändert



    stock mysql_CheckAccount(playerid)
    {
    new Query[128],Name[MAX_PLAYER_NAME],count;
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name, Name);
    format(Query, sizeof(Query), "SELECT * FROM `_Main` WHERE `Name` = '%s'", Name);
    mysql_query(Query);
    mysql_store_result();
    count = mysql_num_rows();
    mysql_free_result();
    return count;
    }


    sieht da iwo wer was ich da falsch gemacht habe?
    falls noch irgendein script teil fehlt bescheid geben..


    benötige dringend hilfe :D Neuling in mysql

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

  • // Edit habe mal unten einen else reingeschrieben und siehe da wenn ich nun connecte wird der sendclientmessage ausgeführt also überspringt er irgendwie die account abfrage?? wie kann ich das fixen bitte um hilfe :(

    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1411.40002,-799.59998,17.6);
    InterpolateCameraPos(playerid, 1416.120483, -896.925903, 129.938934, 1416.120483, -896.925903, 129.938934, 500000000);
    InterpolateCameraLookAt(playerid, 1416.162963, -893.122131, 126.694007, 1416.162963, -893.122131, 126.694007, 500000000);
    if(GetPVarInt(playerid,"Eingeloggt") == 0) //Als erstes fragen wir ab ob der Spieler schon eingeloggt ist oder nicht, damit wir nicht bei jeder Skin auswahl uns neu Einloggen müssen.
    {
    if(mysql_CheckAccount(playerid) == 0)//Wür überprüfen ob der Account Existiert, falls nicht Zeigen wir den Dialog zum Registrieren.
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, ""serverblau"Willkommen auf "SERVER_NAME"",""White"Dein Account wurde noch nicht gefunden.\n"White"Damit deine Spielerdaten gespeichert werden können musst du einen Account erstellen!\n\n"White"Bitte gib nun dein gewünschtes Passwort ein:", "Registrieren", "Abbrechen");
    }
    else if(mysql_CheckAccount(playerid) == 1)//Falls doch zeigen wir den Dialog zum Einloggen.
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    SendClientMessage(playerid, 0xFFFFFFFF,"");
    ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, ""serverblau"Willkommen zurück auf "SERVER_NAME"","\n"White"Damit deine Spielerdaten geladen werden können musst du dich einloggen!\n\n"White"Bitte gib nun dein Passwort ein:", "Einloggen", "Abbrechen");
    }
    else
    {
    SendClientMessage(playerid, 0xFFFFFFFF,"WIRD INGAME ANGEZEIGT");
    }
    }
    return 1;
    }

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

    Einmal editiert, zuletzt von ZeenOne ()

  • WIRD INGAME ANGEZEIGT hatte ich eingefügt um zu testen wie weit er geht
    das mit dem send client kann ich ja später noch wegmachen viel wichtiger ist das er die mysql abfrage nicht durchführt den stock mysql_checkaccount habe ich oben drin
    muss der iwo anders im script stehen?
    weiter oben oder so?

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

  • ist nur ein ruturn 1 drin da ich erst angefangen hatte
    es hat vorher ja alles da auch gefuntzt


    public OnPlayerConnect(playerid)
    {
    return 1;
    }



    //edit ok hat sich erledigt der hat die spalte name nciht eingefügt und hat daher nciht aus dem namen lesen können


    clsoed

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

    Einmal editiert, zuletzt von ZeenOne ()


  • Wieso immer einen neuen query für jede Variable ? Oder Irre ich mich da.


    Du könntest es ja auch direkt in einen query reinschreiben :
    mysql_query("CREATE TABLE IF NOT EXISTS _Main (`id` int(11) AUTO_INCREMENT,`Name` varchar(24),`Passwort` varchar(128), PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;");

    MFG