Mysql - Ressourcenschonendes Login/Register System + Automatic Table|| R5 BlueG

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
  • Ach du liebes bisschen ._.


    C:\Users\\Desktop\(442) : error 017: undefined symbol "PlayerInfo"
    C:\Users\\Desktop\(442) : warning 215: expression has no effect
    C:\Users\\Desktop\(442) : error 001: expected token: ";", but found "]"
    C:\Users\\Desktop\(442) : error 029: invalid expression, assumed zero
    C:\Users\\Desktop\(442) : fatal error 107: too many error messages on one line


    Was ist da los? :) :(


    Beiträge erreicht:[x] 50 Beiträge
    [x] 100 Beiträge
    [x] 150 Beiträge
    [x] 200 Beiträge
    [x] 250 Beiträge
    [x] 300 Beiträge

  • sscanf(str, "e<p<|>{i}s[24]s[128]iif>",PInfo[playerid]);


    Das hättest du vielleicht mal erklären können, im Gegensatz zu anderen Dingen...


    Ich weiß z.B. nicht, was e<p<|>{i} bedeutet. Ich weiß nur, dass es irgendwas mit Enum's zu tuen hat.

    VIVA LA REVOLUCIÓN

  • Habe es 1 zu 1 wie du.
    Nur die MySQL Anbindung Daten verändert.



    #define MY_HOST "localhost"
    #define MY_USER "root"
    #define MY_PASS ""
    #define MY_DATA "boxreallife"


    Leider kommt in der Server CMD nicht's das eine Verbindung hergestellt wurde oder das es keine Verndinung gibt.


    XAMPP ist Offen und, die Datenbank auch Erstellt.


    MfG.

  • bei mir geht speicherung nicht D:


    Das wird eventuell daran liegen das du vllt vergessen hast die Funktion SpielerSpeichern noch bei OnPlayerDisconnect einzufügen, sollte dies doch nicht der fall sein so kannst du mal den debug modus anschalten
    via
    mysql_debug(true); und nachschauen ob es eventuell probleme mit dem SQL-Syntax gibt.


    Zusätzlich wäre zu erwähnen das die Umsetzung hier nicht wirklich das gelbe vom Ei ist.


  • Das wird eventuell daran liegen das du vllt vergessen hast die Funktion SpielerSpeichern noch bei OnPlayerDisconnect einzufügen, sollte dies doch nicht der fall sein so kannst du mal den debug modus anschalten
    via
    mysql_debug(true); und nachschauen ob es eventuell probleme mit dem SQL-Syntax gibt.


    Zusätzlich wäre zu erwähnen das die Umsetzung hier nicht wirklich das gelbe vom Ei ist.


    Bei OnPlayerDisconnect war es drinnen hab auch extra nen /speichern Befehl gemacht, das ich es extra testen konnte. Das "
    mysql_debug(true);" muss das bei OnGamemodeInit rein?
    Eigentlich habe ich ja das hier verwendet: [ SCRIPTING ] MySQL (Installation, Zugriff, Einstellungen, Login & Register Beispiel) blos da hatte ich Probleme mit dem Admin speichern gehabt und einer meinte, das hier sei besser.

  • hab nur das pInfo geändert und von My_HOST etc. auf SQL_HOST


    ----------
    Loaded log file: "server_log.txt".
    ----------


    SA-MP Dedicated Server
    ----------------------
    v0.3x-R2, (C)2005-2013 SA-MP Team


    [17:29:14] filterscripts = "" (string)
    [17:29:14]
    [17:29:14] Server Plugins
    [17:29:14] --------------
    [17:29:14] Loading plugin: crashdetect
    [17:29:14] CrashDetect v4.13 is OK.
    [17:29:14] Loaded.
    [17:29:14] Loading plugin: mysql
    [17:29:14]


    > MySQL plugin R5 successfully loaded.


    [17:29:14] Loaded.
    [17:29:14] Loading plugin: sscanf
    [17:29:14]


    [17:29:14] ===============================


    [17:29:14] sscanf plugin loaded.


    [17:29:14] (c) 2009 Alex "Y_Less" Cole


    [17:29:14] 0.3d-R2 500 Players "dnee"


    [17:29:14] ===============================


    [17:29:14] Loaded.
    [17:29:14] Loaded 3 plugins.


    [17:29:14]
    [17:29:14] Filterscripts
    [17:29:14] ---------------
    [17:29:14] Loaded 0 filterscripts.


    [17:29:14] OnGameo
    [17:29:14] ||>>|| Die Mysql Verbindung konnte hergestellt werden ||<<||
    [17:29:14]
    ----------------------------------
    [17:29:14] BlackWarriors-Gaming Stunt & Fun
    [17:29:14] ----------------------------------


    [17:29:14] Number of vehicle models: 0
    [17:29:19] Incoming connection: 127.0.0.1:58399
    [17:29:19] [join] Goldfire has joined the server (0:127.0.0.1)
    [17:29:49] RCON (In-Game): Player #0 (Goldfire) has logged in.
    [17:29:51] Admin: {FFFFFF}Goldfire{0040FF} hat {FFFFFF}Goldfire{0040FF} zu einem Level {FFFFFF}4 {0040FF}Admin befördert.
    [17:50:06] OnGameo
    [17:50:06] ||>>|| Die Mysql Verbindung konnte hergestellt werden ||<<||
    [17:50:06]
    ----------------------------------
    [17:50:06] BlackWarriors-Gaming Stunt & Fun
    [17:50:06] ----------------------------------


    [17:50:06] Number of vehicle models: 0
    [17:50:24] Admin: {FFFFFF}Goldfire{0040FF} hat {FFFFFF}Goldfire{0040FF} zu einem Level {FFFFFF}4 {0040FF}Admin befördert.
    [17:50:31] [death] Goldfire died 255
    [18:00:15] OnGameo
    [18:00:15] ||>>|| Die Mysql Verbindung konnte hergestellt werden ||<<||
    [18:00:15]
    ----------------------------------
    [18:00:15] BlackWarriors-Gaming Stunt & Fun
    [18:00:15] ----------------------------------


    [18:00:15] Number of vehicle models: 0
    [18:00:33] Admin: {FFFFFF}Goldfire{0040FF} hat {FFFFFF}Goldfire{0040FF} zu einem Level {FFFFFF}3 {0040FF}Admin befördert.
    [18:11:55] [part] Goldfire has left the server (0:1)

  • Hey habe mir jetzt einen Account erstellt und wenn ich mich einloggen will bzw da steht ja jetzt weil ich einen Account habe
    das ich mich mit meinen Passwort einloggen will


    Ich kann da egal was hinschreiben er loggt sich ein Wieso?
    aber in der Datenbank steht mein Passwort anders egal welches pw ich nehme ich kann mich einloggen kann mir jemand Helfen das zu beheben?


    Oder liegt das vil an diesem Warning?


    C:\Users\Pisser\Desktop\Selfmade by Alex\gamemodes\Selfmade.pwn(382) : warning 203: symbol is never used: "playerid"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.


    stock SpielerName(playerid)//ZEILE 385
    {
    new name[MAX_PLAYER_NAME];
    new query[ MAX_PLAYER_NAME + 45 ]; //128 ? orly ich zähle in den unteren Format nur 44 Zeichen + 24 für den Name das heißt 44 + MAX_PLAYER_NAME währe genug dann halt noch +1 für die Symboliserung.
    format(query, MAX_PLAYER_NAME + 45,"SELECT * FROM `accounts` WHERE `Name` = '%s'",name); // warum sizeof verwenden ? Das zieht wieder unnötige "Ressourcen".
    return name;
    }


    LOGIN DIALOG:
    case D_LOGIN: // Dialog Login
    {
    if(response)
    {
    if(strlen(inputtext) == 0) // Wenn er nichts eingibt...
    {
    ShowPlayerDialog(playerid,D_LOGIN,DIALOG_STYLE_PASSWORD,"Tut Login","FEHLER: PASSWORT EINGEBEN !","Login","Abbrechen"); //... zeigen wir ihm den Dialog
    }
    else // Wenn ein Passwort eingegeben wurde...
    {
    if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName(playerid)), true)) //... überprüfen wir das Passwort mittels einen stock welchen wir schreiben werden.
    {
    SetPVarInt(playerid,"logged",1); // Oben erklärt
    LoadPlayer(playerid); // Wir laden den Spieler mittels einem Stock auf schonende Art und Weise
    SpawnPlayer(playerid); //Oben erklärt
    return 1;
    }
    else Kick(playerid);
    }
    }
    }
    }
    return 1;
    }