Benenne in diesem Code "coordsstring" zu etwas anderem um, z.B. "lv_string".
Analog in allen anderen Zeile, die diese Warnung ausgeben.
Für die anderen beiden Blöcke mit Errors benötigen wir den Code.
Benenne in diesem Code "coordsstring" zu etwas anderem um, z.B. "lv_string".
Analog in allen anderen Zeile, die diese Warnung ausgeben.
Für die anderen beiden Blöcke mit Errors benötigen wir den Code.
man kann trotzdem einzahlen
Warum willst du beim einzahlen abfragen, ob noch genügend Geld in der ATM Kasse ist?
Prüfe ob du die aktuellste ocmd Version hast.
ocmd 2.1.1 [ Update 3.11.2013 ]
Aktualisiere diese gegebenenfalls und starte die pawno.exe neu.
Wenn das auch nicht hilft, poste bitte deinen Code.
ocmd@2:giverang,giverank(playerid,params[])
[14:31:35] [ERROR] CMySQLQuery::Execute[OnPlayerRegister] - (error #1062) Duplicate entry '0' for key 'PRIMARY'
Das Problem liegt hier.
Du musst dem Primärschlüssel in deiner Tabelle "user" AUTO_INCREMENT zuweisen, sonst kannst du nur einen Eintrag in der Tabelle anlegen.
Sorry, das hat es beim Kopieren irgendwie abgeschnitten, und da ich es vom Handy aus gepostet habe, habe ich das nicht gesehen. Muss aber natürlich hin
Habe es angepasst.
Douq Vielen Dank fürs Verschieben!
Du musst mysql_query nach dem format aufrufen, sonst ist der String "MySQL Query" zum Zeitpunkt von mysql_query leer.
Außerdem solltest du mysql_tquery nutzen.
Du schließt mit mysql_close die Verbindung und führst dann erst die Queries aus. Das muss andersherum sein, mysql_close gehört ganz ans Ende.
Vielleicht hilft dir das folgende Tutorial: [jTuT] Fraktions-Fahrzeug-System mit MySQL R41-4
Ich habe dort den Prozess anhand von Fraktions-Fahrzeugen beschrieben, grundsätzlich ist das Prinzip aber auf alles anzuwenden, sprich du erstellst halt kein Fahrzeug, sondern eine Gang. Es ist leicht abzuwandeln, dann hast du genau das, was du brauchst.
Und obendrauf, kannst du danach das Tutorial nochmal in seinem Ursprungs-Sinn durchgehen, und Gang-Fahrzeuge einbauen
Versuche mal, ob du damit zu Recht kommst. Nimm dir etwas Zeit und arbeite es sorgfältig durch. Benenne deine Variablen sauber und passe den Code so an, dass es von Fahrzeugen auf Gangs abgewandelt wird.
https://forum.sa-mp.com/showthread.php?t=341545
Zu deiner Frage: Das muss in eine Schleife. MAX_PLAYERS ist nur eine Konstante, die die maximale Anzahl der Spieler auf dem Server beinhaltet (im Standard 500).
Außerdem musst du die Stunden auch auf 0 setzen, wenn diese über die 23 hinaus gehen (24 = 0).
Hier gibt es keine Include zum herunterladen, der Code steht im Tutorial beschrieben und muss in vorhandene includes eingebaut werden.
Dann überschreibst du den Wert noch woanders wieder.
Prüfe, wo du überall in die Variable schreibst und entferne alle nicht notwendigen Stellen.
Beim Laden aus der Datenbank kommt der Wert korrekt in die Variable, im /stats ist es falsch, das bedeutet, dass es irgendwo dazwischen überschrieben wird.
Wo das ist kann ich dir nicht sagen, das kann von überall im Code kommen. Du weißt ja wo du die Variable überall nutzt (STRG+F). Zur Not kommentiere alle Nutzungen aus und prüfe Schrittweise, ab wann es geht bzw. nicht mehr geht.
Entferne
cache_get_value_name(0, "Register", CharacterInfo[playerid][character_Register],50);
cache_get_value_name(0, "LastLogin", CharacterInfo[playerid][character_LastLogin],50);
aus LoadCharacter.
Poste bitte den Code zu den 4 Prints, da du das ja offensichtlich abgewandelt hast.
Kannst du bitte direkt nach
cache_get_value_name(0, "Register", AccountInfo[playerid][account_Register], 50);
einen print einfügen:
printf("Register: %s", AccountInfo[playerid][account_Register]);
Was gibt der Print im Server Log aus?
Das passt so.
Dann sollte das Auslesen bei AccountLogin klappen.
cache_get_value_name(0, "Register", AccountInfo[playerid][account_Register], 50);
Mit welchem Query rufst du AccountLogin auf?
Du liest den Wert von Register (und LastLogin) nicht bei AccountLogin aus dem Cache, daher bleibt die Variable auch leer, was Register angeht (LastLogin setzt du ja im Code wieder).