Ja - aber nur das Feld KleinBurger
Genau die Info die ich brauchte, danke
Ja - aber nur das Feld KleinBurger
Genau die Info die ich brauchte, danke
Hallo!
Ich habe ein Problem mit einer MySQL Query. Kann jemand helfen?
format(query, sizeof(query), "INSERT INTO "#DB_PRE"frakcars (modelID, X, Y, Z, R, C1, C2, siren, Faction, vHP, Fuel) VALUES ('%i', '%f', '%f', '%f', '%f', '%i', '%i', '%i', '%i', 1000.0, '%i')", m, p[0], p[1], p[2], p[3], c1, c2, siren, faction, getMaxFuel(m));
Also das Query ist korrekt.
Wahrscheinlich ist die query Variable zu klein.
@HydranT_: evtl der String zu klein ?
Danke, hat geholfen BlackAce und Jeffrey. Passiert mir immer wieder
Warum rutscht die Tabellen Einträge immer eins nach Oben also:
Tabelle 1 Wert: 2500
Tabelle 2 Wert: 4000
Tabelle 3 Wert: 500
Danach ist es so:
Tabelle 1 Wert: 4000
Tabelle 2 Wert: :500
Tabelle 3 Wert: 500
Hier wird alles gespeichert:
stock SaveFraktion()
{
new query[275],
frak = 0;
for(;frak<MAX_FRAKTIONEN;frak++)
{
format(query,sizeof(query),"UPDATE "#DATENBANK"_fraktionen SET frakmaterial = '%d', frakgeld = '%d', marihuana = '%d', koks = '%d', crystle = '%d', lsd = '%d', gras = '%d' WHERE frakid = '%d'",FrakInfo[frak][frakmaterial],FrakInfo[frak][frakgeld],FrakInfo[frak][fMarihuana],FrakInfo[frak][fKoks],FrakInfo[frak][fCrystle],FrakInfo[frak][fLSD],FrakInfo[frak][fGras],frak);
mysql_function_query(MYSQLVerbindung,query,false,"","");
}
return 1;
}
Und hier geladen:
mysql_function_query(MYSQLVerbindung,"SELECT * FROM "#DATENBANK"_fraktionen",true,"OnQueryFinish","siii","SELECT * FROM "#DATENBANK"_fraktionen",_SQL_FRAKTION_LOAD,0,MYSQLVerbindung);
case _SQL_FRAKTION_LOAD:
{
cache_get_data(rows,fields);
new frakstring[500],frakname[75];
new frak = 0;
if(rows)
{
while(frak<rows)
{
cache_get_field_content(frak,"id",result);
FrakInfo[frak][fid] = strval(result);
printf("ID: %d",FrakInfo[frak][fid]);
cache_get_field_content(frak,"interior",result);
FrakInfo[frak][fInteriorID] = strval(result);
cache_get_field_content(frak,"vwelt",result);
FrakInfo[frak][fVirtuelleWelt] = strval(result);
cache_get_field_content(frak,"frakgeld",result);
FrakInfo[frak][frakgeld] = strval(result);
printf("geldf: %d",FrakInfo[frak][frakgeld]);
cache_get_field_content(frak,"mp5rank",result);
FrakInfo[frak][fMP5Rank] = strval(result);
cache_get_field_content(frak,"m4rank",result);
FrakInfo[frak][fM4Rank] = strval(result);
cache_get_field_content(frak,"deaglerank",result);
FrakInfo[frak][fDeagleRank] = strval(result);
cache_get_field_content(frak,"ak47rank",result);
FrakInfo[frak][fAK47Rank] = strval(result);
cache_get_field_content(frak,"riflerank",result);
FrakInfo[frak][fRifleRank] = strval(result);
cache_get_field_content(frak,"pistolerank",result);
FrakInfo[frak][fPistoleRank] = strval(result);
cache_get_field_content(frak,"shotgunrank",result);
FrakInfo[frak][fShotgunRank] = strval(result);
cache_get_field_content(frak,"baseballrank",result);
FrakInfo[frak][fBaseballRank] = strval(result);
cache_get_field_content(frak,"schlagringrank",result);
FrakInfo[frak][fSchlagringRank] = strval(result);
cache_get_field_content(frak,"schwacheR",result);
FrakInfo[frak][fSRustung] = strval(result);
cache_get_field_content(frak,"mittelR",result);
FrakInfo[frak][fMRustung] = strval(result);
cache_get_field_content(frak,"starkeR",result);
FrakInfo[frak][fStarkRustung] = strval(result);
cache_get_field_content(frak,"frakmaterial",result);
FrakInfo[frak][frakmaterial] = strval(result);
cache_get_field_content(frak,"marihuana",result);
FrakInfo[frak][fMarihuana] = strval(result);
cache_get_field_content(frak,"koks",result);
FrakInfo[frak][fKoks] = strval(result);
cache_get_field_content(frak,"crystle",result);
FrakInfo[frak][fCrystle] = strval(result);
cache_get_field_content(frak,"lsd",result);
FrakInfo[frak][fLSD] = strval(result);
cache_get_field_content(frak,"gras",result);
FrakInfo[frak][fGras] = strval(result);
FrakInfo[frak][fPosX] = cache_get_row_float(frak,29,MYSQLVerbindung);
FrakInfo[frak][fPosY] = cache_get_row_float(frak,30,MYSQLVerbindung);
FrakInfo[frak][fPosZ] = cache_get_row_float(frak,31,MYSQLVerbindung);
cache_get_field_content(frak,"frakrank1",result);
format(FrakRank0[frak],26,"%s",result);
cache_get_field_content(frak,"frakrank2",result);
format(FrakRank1[frak],26,"%s",result);
cache_get_field_content(frak,"frakrank3",result);
format(FrakRank2[frak],26,"%s",result);
cache_get_field_content(frak,"frakrank4",result);
format(FrakRank3[frak],26,"%s",result);
cache_get_field_content(frak,"frakrank5",result);
format(FrakRank4[frak],26,"%s",result);
cache_get_field_content(frak,"frakrank6",result);
format(FrakRank5[frak],26,"%s",result);
cache_get_field_content(frak,"fraklohn1",result);
FrakInfo[frak][fraklohn1] = strval(result);
cache_get_field_content(frak,"fraklohn2",result);
FrakInfo[frak][fraklohn2] = strval(result);
cache_get_field_content(frak,"fraklohn3",result);
FrakInfo[frak][fraklohn3] = strval(result);
cache_get_field_content(frak,"fraklohn4",result);
FrakInfo[frak][fraklohn4] = strval(result);
cache_get_field_content(frak,"fraklohn5",result);
FrakInfo[frak][fraklohn5] = strval(result);
cache_get_field_content(frak,"fraklohn6",result);
FrakInfo[frak][fraklohn6] = strval(result);
cache_get_field_content(frak,"wtposX",result);
FrakInfo[frak][WTPos][0] = floatstr(result);
cache_get_field_content(frak,"wtposY",result);
FrakInfo[frak][WTPos][1] = floatstr(result);
cache_get_field_content(frak,"wtposZ",result);
FrakInfo[frak][WTPos][2] = floatstr(result);
Danke im vorraus
Versuche ob es so schon hilft.
format(query,sizeof(query),"UPDATE "#DATENBANK"_fraktionen SET frakmaterial = '%d', frakgeld = '%d', marihuana = '%d', koks = '%d', crystle = '%d', lsd = '%d', gras = '%d' WHERE frakid = '%d'",FrakInfo[frak][frakmaterial],FrakInfo[frak][frakgeld],FrakInfo[frak][fMarihuana],FrakInfo[frak][fKoks],FrakInfo[frak][fCrystle],FrakInfo[frak][fLSD],FrakInfo[frak][fGras],frak);
zu:
format(query,sizeof(query),"UPDATE "#DATENBANK"_fraktionen SET frakmaterial = '%d', frakgeld = '%d', marihuana = '%d', koks = '%d', crystle = '%d', lsd = '%d', gras = '%d' WHERE frakid = '%d'",FrakInfo[frak][frakmaterial],FrakInfo[frak][frakgeld],FrakInfo[frak][fMarihuana],FrakInfo[frak][fKoks],FrakInfo[frak][fCrystle],FrakInfo[frak][fLSD],FrakInfo[frak][fGras],frak+1);
PS: Dieser Thread ist für kleine Fragen, nicht für solche großen Codes, gedacht.
Könnte mir bitte jemand erklären wie genau ich die neue Sirene aus der Version 1.3.7 auf mein Fahrzeug setze?
Könnte mir bitte jemand erklären wie genau ich die neue Sirene aus der Version 1.3.7 auf mein Fahrzeug setze?
Die wird nicht drauf gesetzt, es wird nur der Ton eingebaut, wenn du H drückst.
Das kannst du mit http://wiki.sa-mp.com/wiki/AddStaticVehicleEx und http://wiki.sa-mp.com/wiki/CreateVehicle machen.
Woran kann es liegen das ich in der Tabelle den Wert 30 habe aber Ingame das Script diesen Wert erst dann wieder nimmt wenn ich den ernuet setze?
Wie kann man abfragen ob ein string leer ist?
Wie kann man abfragen ob ein string leer ist?
if(string[0] == EOS)
{
}
oder
if(!strlen(string))
{
}
Warum wird man nicht in den Editor gesetzt?
case DIALOG_INVENTAR:
{
if(!response)return true;
if(Inventar[playerid][listitem][0] == -1)return SendClientMessage(playerid,GRAU,"Dieser Inventarslot ist leer");
new Float:x,Float:y,Float:z, vworld = GetPlayerVirtualWorld(playerid), vint = GetPlayerInterior(playerid);
GetPlayerPos(playerid,x,y,z);
Inventar[playerid][listitem][2] = CreateDynamicObject(Inventar[playerid][listitem][0],x+3,y,z, 0.0, 0.0,0.0, vworld, vint, -1, 100.0);
EditDynamicObject(playerid, Inventar[playerid][listitem][2]);
}
Warum wird der textlabel und die Pflanze nicht gelöscht?
if(DrogenInfo[drug][drugart] == 1) {
DrogenInfo[drug][geerntet] = 1;
Spieler[playerid][pMarihuana] += DrogenInfo[drug][drugausbeute];
format(string,sizeof(string),""#HTML_RED"Info: "#HTML_WHITE"Du hast %i Droge (Marihuana) abgeerntet!",DrogenInfo[drug][drugausbeute]);
format(query,sizeof(query),"DELETE FROM "#DATENBANK"_drogen WHERE drogenid = '%d'",DrogenInfo[drug][drogenid]);
Delete3DTextLabel(DrugText[drug]);
DestroyObject(DrogenInfo[drug][drugobjekt]);
SendClientMessage(playerid,GRAU,string);
return true;
}
Wie kann man abfragen ob ein string leer ist?
hier mit
#define isnull(%1) ((%1[0] == 0) || (%1[0] == 1 && %1[1] == 0))
Nutzung:
if(isnull(string))
{
// was tun wenn der string leer ist
}
enum fraktionInfo {
Float:SpawnX,
Float:SpawnY,
Float:SpawnZ,
fIName[70],
fIColor
}
new frakt[MAX_FRAKS][fraktionInfo] = {
{0.000, 0.000, 0.000, "Hitmen Agency", 0x743A3AFF},
{0.000, 0.000, 0.000, "San Fierro Police Department", 0x0385AFFF},
{0.000, 0.000, 0.000, "Las Venturas Police Department", 0x0385AFFF},
{0.000, 0.000, 0.000, "San Andreas Medical Department", 0xB30000FF},
{0.000, 0.000, 0.000, "San Andreas Vehicle Controll", 0xD26900FF}, // Abschlepp Dienst
{0.000, 0.000, 0.000, "Yakuza", 0xFF82C0FF}
};
Compiler sagt:
new frakt[MAX_FRAKS][fraktionInfo] = {
zu:
new frakt[][fraktionInfo] = {
oder
MAX_FRAKS zu 6 ändern.
Warum folgende Errors:
case _SQL_FVERWALTUNG_INSERT:
{
cache_get_data(rows,fields);
if(!rows)
{ //zeile 44645
format(query,sizeof(query),"INSERT INTO fraktionen (id,frakid,frakrank1,frakrank2,frakrank3,frakrank4,frakrank5,frakrank6,mp5rank,m4rank,deaglerank,ak47rank,rifelrank,pistolerank,shotgunrank,baseballrank,schlagringrank,schwacheR,mittelR,starkerR,interior,vwelt,frakgeld,frakmaterial,marihuana,koks,crystle,lsd,gras,posx,posy,posz,fraklohn1,fraklohn2,fraklohn3,fraklohn4,fraklohn5,fraklohn6,wtposX,wtposY,wtposZ,mlimit) VALUES ('%d','%d','NA','NA','NA','NA','NA','NA','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0'",id,frakid);//Zeile 44646
mysql_function_query(MySQLVerbidung,query,false,"","");
printf("- Fraktionsvewaltung für die Fraktion %i erstellt -",frakid);
}
return 1;
}
(44645) : error 075: input line too long (after substitutions)
(44646) : error 037: invalid string (possibly non-terminated string)
(44646) : error 017: undefined symbol "INSERT"
(44646) : error 017: undefined symbol "INTO"
Schreibe es so:
case _SQL_FVERWALTUNG_INSERT:
{
cache_get_data(rows,fields);
if(!rows)
{
query = "INSERT INTO fraktionen (id,frakid,frakrank1,frakrank2,frakrank3,frakrank4,frakrank5,frakrank6,mp5rank,m4rank,deaglerank,ak47rank,rifelrank,pistolerank,shotgunrank,baseballrank,schlagringrank,schwacheR,mittelR,starkerR,interior,vwelt,frakgeld,frakmaterial,marihuana,koks,crystle,lsd,gras,posx,posy,posz,fraklohn1,fraklohn2,fraklohn3,fraklohn4,fraklohn5,fraklohn6,wtposX,wtposY,wtposZ,mlimit) VALUES";
format(query,sizeof(query),"%s('%d','%d','NA','NA','NA','NA','NA','NA','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0'",query,id,frakid);
mysql_function_query(MySQLVerbidung,query,false,"","");
printf("- Fraktionsvewaltung für die Fraktion %i erstellt -",frakid);
}
return 1;
}
Alles anzeigenWieso bekomme ich keine Nachricht, das ich in keinem Fahrzeug sitze?
Und wieso bekomme ich beim LichtAn nur die Nachricht, SendClientMessage(playerid, 0x9B0000FF, "Du sitzt in einem Fahrzeug,Boot,Flugzeug, welches kein Licht hat!");
stock StartMotor(playerid)
{
if(GetPlayerVehicleSeat(playerid) == 0)
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0x9B0000FF, "Du sitzt in keinem Fahrzeug, um den Motor zu starten!");
new car = GetPlayerVehicleID(playerid),m = GetVehicleModel(car);
if(m == 509 || m == 481 || m == 510) return SendClientMessage(playerid, 0x9B0000FF, "Du sitzt auf einem Fahrrad, das hat keinen Motor!");
else if (Motor[car] == false)
{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
Motor[car] = true;
SendClientMessage(playerid, 0x4B94FFFF, "{1AADD6}Gedanke: {F2F2F2}Sie drehen den Zündschlüssel, und schalten den Motor {36D61A}an!");
return 1;
}
else
{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Motor[car] = false;
SendClientMessage(playerid, 0x4B94FFFF, "{1AADD6}Gedanke: {F2F2F2}Sie drehen den Zündschlüssel, und schalten den Motor {E83A3D}aus!");
return 1;
}
}
return 1;
}
stock LichtAn(playerid)
{
if(GetPlayerVehicleSeat(playerid) == 0)
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0x9B0000FF, "Du sitzt in keinem Fahrzeug, um das Licht einzuschalten!");
new car = GetPlayerVehicleID(playerid),m = GetVehicleModel(car);
if(m == 417 || 425 || m == 447 || m == 464 || m == 465 || m == 469 || m == 487 || m == 488 || m == 497 || m == 501 || m == 548 || m == 563 || m == 430 || m == 446 || m == 452 || m == 453 || m == 454 || m == 472 || m == 473 || m == 484 || m == 493 || m == 595 ||
m == 460 || m == 476 || m == 511 || m == 512 || m == 513 || m == 519 || m == 520 || m == 553 || m == 577 || m == 592 || m == 593) return SendClientMessage(playerid, 0x9B0000FF, "Du sitzt in einem Fahrzeug,Boot,Flugzeug, welches kein Licht hat!");
if (Licht[car] == false)
{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,engine,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
Licht[car] = true;
SendClientMessage(playerid, 0x4B94FFFF, "{1AADD6}Gedanke: {F2F2F2}Sie drehen am Schalter, und schalten das Licht {36D61A}an!");
return 1;
}
else
{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,engine,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
Licht[car] = false;
SendClientMessage(playerid, 0x4B94FFFF, "{1AADD6}Gedanke: {F2F2F2}Sie drehen am Schalter, und schalten das Licht {E83A3D}aus!");
return 1;
}
}
return 1;
}