Jetzt nur noch das Problem das es nicht in die Datenbank reingeschrieben wird
wo trägst du es in die Datenbank ein?
Jetzt nur noch das Problem das es nicht in die Datenbank reingeschrieben wird
wo trägst du es in die Datenbank ein?
Hier PlayerInfo[pID][pFraktion] = FraktionsID; oder nicht ?
Und wo lässt du das in die Datenbank eintragen?
Hier PlayerInfo[pID][pFraktion] = FraktionsID; oder nicht ?
Da trägst du es nur in einem Array ein, jedoch ist dies nach einem Relog hinfällig.
d.h. du musst irgendswo ein UPDATE Query haben.
mysql_format(MySQLVerbindung, query, sizeof(query), "UPDATE spieler SET Level = '%d', Geld = '%d', Kills = '%d', Tode = '%d', Fraktion = '%d', Adminlevel = '%d', WHERE ID = '%d'",
und welche Parameter hast du für deine Platzhalter?
Meinst du das hier?
mysql_format(MySQLVerbindung, query, sizeof(query), "UPDATE spieler SET Level = '%d', Geld = '%d', Kills = '%d', Tode = '%d', Fraktion = '%d', Adminlevel = '%d', WHERE ID = '%d'",
--> PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pGeld], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pTode], PlayerInfo[playerid][pFraktion], PlayerInfo[playerid][pAdminlevel], PlayerInfo[playerid][p_id]);
exakt, wo führst du die Query´s aus?
Meinst du das hier?
PlayerInfo[playerid][pFraktion] = cache_get_field_content_int(0, "Fraktion", MySQLVerbindung);
Lasse es über ein Public laufen
ne ich meinte die UPDATE Query´s, benutzt du auch das Public(Speichern nicht Laden)?
Ich habe ein stock mit (SpielerSpeichern)
mysql_format(MySQLVerbindung, query, sizeof(query), "UPDATE spieler SET Level = '%d', Geld = '%d', Kills = '%d', Tode = '%d', Fraktion = '%d', Adminlevel = '%d', WHERE ID = '%d'",
PlayerInfo[playerid][pLevel], PlayerInfo[playerid][pGeld], PlayerInfo[playerid][pKills], PlayerInfo[playerid][pTode], PlayerInfo[playerid][pFraktion], PlayerInfo[playerid][pAdminlevel], PlayerInfo[playerid][p_id]);
Und habe ein public Wenn er sich eingeloggt hat
PlayerInfo[playerid][p_id] = cache_get_field_content_int(0, "ID", MySQLVerbindung);
PlayerInfo[playerid][pLevel] = cache_get_field_content_int(0, "Level", MySQLVerbindung);
PlayerInfo[playerid][pGeld] = cache_get_field_content_int(0, "Geld", MySQLVerbindung);
PlayerInfo[playerid][pKills] = cache_get_field_content_int(0, "Kills", MySQLVerbindung);
PlayerInfo[playerid][pTode] = cache_get_field_content_int(0, "Tode", MySQLVerbindung);
PlayerInfo[playerid][pFraktion] = cache_get_field_content_int(0, "Fraktion", MySQLVerbindung);
PlayerInfo[playerid][pAdminlevel] = cache_get_field_content_int(0, "Adminlevel", MySQLVerbindung);
PlayerInfo[playerid][pLoggedIn] = true;
GivePlayerMoney(playerid, PlayerInfo[playerid][pGeld]);
SetPlayerScore(playerid, PlayerInfo[playerid][pLevel]);
SpawnPlayer(playerid);
Der Stock "SpielerSpeichern" wird auch aufgerufen oder?
wenn ja: printe mal den Stock und besonders auch den Query
wenn nein: baue ihm ein ![]()
Wenn ich mich in einer Fraktion setze muss es doch direkt in die Spalte eingetragen werden?
Sonst müsste man jedes mal neu joinen wegen dem SpielerSpeichern
ne dafür gibt es ja die Arrays und OnPlayerDisconnect
public OnPlayerDisconnect(playerid, reason)
{
SpielerSpeichern(playerid);
return 1;
}
Habe es da ganze Zeit eingetragen klappt leider nicht..
printe mal den ganzen Stock "SpielerSpeichern"
Dumme Frage wie printe ich einen stock nochnie sowas gemacht :o
mit printf und print
[08:50:10] UPDATE spieler SET Level = '5', Geld = '5000', Kills = '0', Tode = '0', Fraktion = '0', Adminlevel = '7', WHERE ID = '1'
fällt dir was vor dem WHERE auf?