Es wird nichts bringen, wenn du den ganzen Server speicherst, nur weil du ein Haus kaufst, dafür ist MySQL nicht geeignet.
Poste bitte mal den Befehl, mit dem du das Haus/Biz kaufst, welches du gekauft hast aber nicht gespeichert wurde.
Beiträge von Jeffry
-
-
Du kannst sie mal löschen, das andere brauchen wir alles nicht mehr. Einfach die Datei leeren oder löschen.
Dann suche mal in deinem Code nach
mysql_debug(0);
und ersetze es mit:
mysql_debug(1);Dann poste den mysql Log nochmal.
-
Ganz unten steht bei OnPlayerCommandText:
return 0;ändere das zu:
return SendClientMessage(playerid, 0xFF0000FF, "Befehl existiert nicht."); -
Schreibe das nativechecker Plugin bitte an die letzte Stelle in der server.cfg unter plugins.
Dann schau mal in den mysql_log.txt ob da etwas zur fehlgeschlagenen Verbindung steht. -
Nyu_x3:
Versuche es mal mit diesem Plugin: https://code.google.com/p/sa-m…R8-static.tar.gz&can=1&q=
Nutze die static Version.Die R7 static habe ich auf die Schnelle nicht finden können, vielleicht sieht das hier ja jemand und wäre so freundlich es hochzuladen, falls es noch jemand hat.

-
Apokrate:
new query[128];
format(query, sizeof(query), "SELECT `username` FROM `user` WHERE `IP` = '%s'" , pID);
mysql_query(dbhandle, query);@Voxa:
So wie das aussieht hast du es bereits irgendwo schonmal definiert, schau da mal nach.
Und ändere:
#if SQL_SERVER == 1
zu:
#elseif SQL_SERVER == 1 -
Am besten alles, den Log, die Warnungen die du mit dem R7 Include bekommst, und ganz super wäre es, wenn du den Link zum Thread von dem Code hast, den du heruntergeladen hast.

-
Was hast du denn bereits gemacht, bzw wo hängst du fest? Kannst du den Code mal posten, so wie er gerade ist und erklären wo genau du nicht weiter weißt?
-
Kannst du die bitte mal posten, damit wir sehen, ob das mit MySQL zu tun hat oder nicht.
Ansonsten müsstest du alles MySQL Plugin Versionen probieren, aber das sind so an die 50 verschiedenen, das macht wenig Sinn.Hast du vielleicht auch den Thread von wo du den Code her hast?
-
Naja, das R39 kann es dann ja schonmal nicht sein.
Wenn du den Code mit dem Include kompilierst, welches dabei ist (das in dem R7 steht), kannst du den Code dann ohne Fehler kompilieren? -
Nein, die zwei defines kannst du löschen.
#define GetVehicleTankArt(%0) VehData[(%0)-400][0]
#define GetVehicleMaxTank(%0) VehData[(%0)-400][1]
//Löschen. -
Hier der direkte Link:
https://github.com/pBlueG/SA-M…/mysql-r39-2-linux.tar.gzGithub ist aber eigentlich in Ordnung, ist ja nicht solidfiles.

-
Da kann es zu Fehlern kommen, z.B. wenn er darunter noch Autos erstellt, oder m (was so kommen wird) eine ungültige vehicleid hat...dann greift er auf einen ungütligen Index im Array zu.
Stimmt, du fragst es in deinem define nicht ab. Wäre besser das in der Funktion entsprechend abzufragen, dann muss man es nicht überall nochmal hinschreiben, wo man die Funktion verwendet.
stock GetVehicleTankArt(model)
{
if(model < 400 || model > 611) return -1;
return VehData[model-400][0];
}
stock GetVehicleTankArt(model)
{
if(model < 400 || model > 611) return -1;
return VehData[model-400][1];
}Oder eben in den define klatschen, davon bin ich aber kein Freund, da viele das dann nicht mehr verstehen, vor allem wenn es länger wird. Ein Code sollte ja auch noch lesbar sein.
-
Wenn das pRP Script auf R39 basiert, dann hast du das falsche Plugin.
Lade dir mal dieses Plugin herunter und probiere es aus (ggf. die static Version): https://github.com/pBlueG/SA-MP-MySQL/releases/tag/R39-2 -
Sollte so passen:
for (new v=0; v< MAX_VEHICLES; v++)
{
GetVehicleParamsEx(v,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(v,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Motor[v] = false;
Tank[v] = GetVehicleMaxTank(GetVehicleModel(v));
} -
War da eine mysql.inc oder eine a_mysql.inc, oder sowas in der Art (inc File) dabei?
Wenn ja, kannst du die mal öffnen und nachschauen, welche Version das ist, müsste oben irgendwo stehen. -
Nutze, falls vorhanden, das mysql_static.so Plugin, das beinhaltet diese Library bereits.
Und dann schreibe es in der server.cfg vor das nativechecker.so. -
if(!IsABoat(GetVehicleModel(vehicleid)))
zu:
if(IsABoat(GetVehicleModel(vehicleid)))Und das bei allen den Abfragen die du da hast. Jeweils das Ausrufezeichen weg machen.
-
Die fehlt noch das MySQL Plugin.
War bei dem Download keins dabei? Schau da mal nach, bzw. trage es ggf. in die server.cfg ein. -
Doch, klar.

Kannst es so machen:
new v = GetPlayerVehicleID(playerid);
new m = GetVehicleModel(v);
new string[125];
switch(GetVehicleTankArt(m))
{
case 0: string = "Diesel";
case 1: string = "Benzin";
}
format(string,sizeof string,"Tankart: ~g~%s~n~~w~Tank: ~g~%i ~w~liter~n~Km: 0000012~g~%d ~w~",string,Tank[vehicleid]);
PlayerTextDrawSetString(playerid,CarTankart[playerid],string);