Was steht diesbezüglich im MySQL Log? Das ist eine extra Datei.
Beiträge von Jeffry
-
-
Was steht denn im Log?
-
Suche in deinem Code nach "pAlter" (STRG+F).
Dann ersetze es mit "datum".Wenn es dann auch nicht klappt, poste bitte den Code, bei dem der Fehler kommt (Login?).
-
Falscher Copy&Paste. Jetzt passt es.

Dann poste mal den Code, mit dem du den Spieler das erste mal einloggst.
Rufst du dort savePlayer(playerid) auf? Wenn nicht, dann mach das. -
Poste bitte dein OnPlayerEnterVehicle.
-
Schalte bitte mal den MySQL Debug Modus an und poste dann was im MySQL Log steht, wenn du den Spieler speicherst.
Wie du das machst steht hier: Tipps: Scripting-Probleme richtig erklären (Kapitel 1.4) -
Dieser Fehler sagt, dass die Spalte "datum" nicht existiert. Irgendwo rufst du also das auf.
Hast du die Spalte "datum" zu "pAlter" geändert? Wenn ja, dann kannst du das auch wieder rückgängig machen, nur "Alter" solltest du nicht verwenden. -
Aha, geht doch.
format(query,sizeof(query),"UPDATE user SET level='%i',cash='%i',datum='%i',geschlecht='%i',alevel='%i',skin='%i',fraktion='%i',rang='%i' WHERE id='%i'"
zu:
format(query,sizeof(query),"UPDATE user SET level='%i',cash='%i',datum='%s',geschlecht='%i',alevel='%i',skin='%i',fraktion='%i',rang='%i' WHERE id='%i'"Außerdem hast du die Spalte "datum" nicht in der Tabelle deiner Datenbank.
Wenn du das Alter aufnimmst, nenne die Spalte entwerder "pAlter" oder schreibe im Query:
anstatt nur
da ALTER ein SQL-Befehl ist. -
-
public PayDay(playerid)
{
SendClientMessage(playerid,info,"|____________Zahltag___________|");
GivePlayerMoney(playerid,2000);
SendClientMessage(playerid,hinweis,"Du hast 45 Minuten gespielt und bekommst nun dein Gehalt!");
SetPVarInt(playerid, "pLevelPunkte", GetPVarInt(playerid, "pLevelPunkte")+1);
SpielerInfo[playerid][pPayday] = 0;
printf("playerid: %d | pLevelPunkte: %d | Required: %d", playerid, GetPVarInt(playerid, "pLevelPunkte"), RequiredPoints(playerid));
if(GetPVarInt(playerid, "pLevelPunkte") == RequiredPoints(playerid))//Hier
{
printf("Level hoch");
GivePlayerScore(playerid,1);
SetPVarInt(playerid, "pLevelPunkte", 0);
SpielerInfo[playerid][pLevel] ++;
SendClientMessage(playerid,erfolg,"Herzlichen Glückwunsch, du bist ein Level gestiegen!");
}
return 1;
}Was wird dann geprintet?
-
Schreibe deine Speicher-Funktion dann eben mal so:
savePlayer(playerid)
{
printf("SavePlayer für %d aufgerufen.", playerid);
if(sInfo[playerid][eingeloggt]==0)return 1;
//Speichern Level,Geld
new query[1024];
format(query,sizeof(query),"UPDATE user SET level='%i',cash='%i',datum='%i',geschlecht='%i',alevel='%i',skin='%i',fraktion='%i',rang='%i' WHERE id='%i'"
,sInfo[playerid][level],sInfo[playerid][cash],sInfo[playerid][datum],sInfo[playerid][geschlecht],sInfo[playerid][alevel],sInfo[playerid][skin],sInfo[playerid][fraktion],sInfo[playerid][rang],sInfo[playerid][db_id]);
printf("query: %s", query);
mysql_function_query(dbhandle,query,false,"","");
return 1;
}Dann registriere dich und poste was im server_log.txt steht.
-
Zitat
[16:16:34] *** Streamer Plugin: Include file version (0x26105) does not match plugin version (0x275201) (script might need to be recompiled with the latest include file)
Du musst deinen Gamemode mit der neuen Streamer-Include komplieren.Zwecks den MySQL Fehlern: Du hast das neue Plugin nicht eingefügt, bzw. geladen, sondern noch das alte drin.
Zitat> MySQL plugin R6-2 successfully loaded.
-
Wie sieht das Query aus, mit dem du OnCheckPassword aufrufst?
-
Lade dir hier die R8 Version herunter und füge sie in deinen Server ein, und in die server.cfg (die alte Version entfernst du).
https://code.google.com/p/sa-m…R8-static.tar.gz&can=1&q=Dann aktualisiere dein Streamer Plugin:
http://forum.sa-mp.com/showthread.php?t=102865 -
Llade dir das nativechecker Plugin herunter: http://forum.sa-mp.com/showthread.php?t=249226
Füge es in deinen Server ein und poste dann was im Log steht.Achtung: Nutze bei solidfiles den kleinen Link "Direct download link" für den Download, sonst bekommst du irgendeine .exe.
-
Vor der INSERT INTO Query-Zeile in dem LoadFracVehicles_Data public.
Ansonsten, wenn du nicht weißt welche ich meine, poste dein LoadFracVehicles_Data public. -
Im LoadFracVehicles_Data public.
Nach:
//Fahrzeug existiert noch nicht, es wird jetzt in die Datenbank geschrieben.Die Fahrzeuge die dir da erstellt worden sind kannst du löschen, wenn du das dann eingefügt hast, werden sie nicht mehr erstellt.
-
Hier fehlt das Callback das danach aufgerufen wird:
mysql_tquery(Handle, "SELECT * FROM fracvehicles");
zu:
mysql_tquery(Handle, "SELECT * FROM fracvehicles", "LoadFracVehicles_Data");Und dort kannst du dann, wenn du es nach dem Tutorial gemacht hast das hier in die Schleife einfügen, damit die leeren Fahrzeuge nicht erstellt werden:
Nach:
//Fahrzeug existiert noch nicht, es wird jetzt in die Datenbank geschrieben.
das:
if(fracVehicle[i][e_modelID] == 0) continue; -
#define FRAC_VEHICLES 1
Da könntest du nur ein Fahrzeug erstellen. Das musst du natürlich erhöhen. -
Das kannst du zum Beispiel mit diesem Editor machen: http://forum.sa-mp.com/showthread.php?t=336820