Hey ich habe ein Frakcar System aber ich will es verbessern unswa will ich abfragen wenn man ein Car kauft ob schon z.b 15 Cars von dieser Fraktion existieren weiß aber nicht wie
Datenbank
http://www11.pic-upload.de/05.08.15/cqri3167u4ym.png
Hey ich habe ein Frakcar System aber ich will es verbessern unswa will ich abfragen wenn man ein Car kauft ob schon z.b 15 Cars von dieser Fraktion existieren weiß aber nicht wie
Datenbank
http://www11.pic-upload.de/05.08.15/cqri3167u4ym.png
Hey, mit folgendem Befehl kannst du die 'Anzahl' ausgeben.
SELECT Count(*) FROM fracvehicles WHERE FracID = '???'
Aber ich glaube es wäre einfacher wenn man es über eine Schleife regeln würde und dann halb Abfragt ob das Fahrzeug zu Fraktion gehört und count einfach ein höher setzt.
Count ist dann die anzahl oder ?
Jup, Count(*) gibt dir die Anzahl aus, du kannst der Spalte auch noch einen Namen geben indem du es z.B. so schreibst.
SELECT Count(*) AS FahrzeugAnzahl FROM fracvehicles WHERE FracID = '???' <- Hier würde dann die Spalte 'FahrzeugAnzahl' heißen.
Kannst es ja einfach mal in phpMyAdmin ausprobieren.
wie meinst du das kapiere das gerade nicht sry
Du gehst auf den Link (der oben in deinem Bild ist) drückst auf den Reiter SQL und gibst den Befehl dort ein, dann siehst du die Auswirkung des Befehls.
//e Oder was verstehst du genau nicht ?^^
ok ich habe es bis jetze so
C:\Users\tobi\Desktop\Selfmade\Reallife Script v1.3.5\gamemodes\Reallifescript.pwn(9686) : error 017: undefined symbol "Count"
C:\Users\tobi\Desktop\Selfmade\Reallife Script v1.3.5\gamemodes\Reallifescript.pwn(9690) : warning 213: tag mismatch
if(dialogid==DIALOG_FAUTOHAUS)
{
if(response)
{
new id=GetPVarInt(playerid,"buyCarID");
if(GetPlayerMoney(playerid)<fahCars[id][fa_preis])
{
SendClientMessageEx(playerid,ROT,"Du hast nicht genügend Geld");
RemovePlayerFromVehicle(playerid);
return 1;
}
new query[256];
format(query,sizeof(query),"SELECT Count(*) FROM fracvehicles WHERE FracID = 'sInfo[playerid][fraktion]'");
mysql_function_query(dbhandle,query,false,"","");
if(Count > 1)
{
GivePlayerMoney(playerid,-fahCars[id][fa_preis]);
new Float:x, Float:y, Float:z, Float:a;
fahCars[id][fc_modelID] = fahCars[id][fa_model];
fahCars[id][fa_x] = x;
fahCars[id][fa_y] = y;
fahCars[id][fa_z] = z;
fahCars[id][fa_r] = a;
fcars[id][fc_fracID] = sInfo[playerid][fraktion];
format(query, sizeof(query), "INSERT INTO FracVehicles (ID, ModelID, PosX, PosY, PosZ, PosA, Color1, Color2, FracID) VALUES ('%d', '%d', '%f', '%f', '%f', '%f', '%d', '%d', '%d')",
id, fcars[id][fc_modelID], fcars[id][fc_x], fcars[id][fc_y], fcars[id][fc_z], fcars[id][fc_a], fcars[id][fc_color1], fcars[id][fc_color2], fcars[id][fc_fracID]);
mysql_tquery(dbhandle, query);
fcars[id][fc_vID] = CreateVehicle(fcars[id][fc_modelID], fcars[id][fc_x], fcars[id][fc_y], fcars[id][fc_z], fcars[id][fc_a], -1, -1, -1);
new str[10],plate;
plate = GetFreeNumberPlate();
fcars[id][e_plate] = plate;
format(str, sizeof(str), "SA-%d", fcars[id][e_plate]);
SetVehicleNumberPlate(fcars[id][fc_vID],str);
PutPlayerInVehicle(playerid, fcars[id][fc_vID], 0);
RemovePlayerFromVehicle(playerid);
return 1;
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,ROT,"Deine Fraktion hat genug Fahrzeuge!");
}
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessageEx(playerid,ROT,"Dann eben nicht ...");
}
return 1;
}
if(dialogid==DIALOG_FAUTOHAUS)
{
if(response)
{
new id=GetPVarInt(playerid,"buyCarID");
if(GetPlayerMoney(playerid)<fahCars[id][fa_preis])
{
SendClientMessageEx(playerid,ROT,"Du hast nicht genügend Geld");
RemovePlayerFromVehicle(playerid);
return 1;
}
new query[128];
format(query,sizeof(query),"SELECT Count(*) FROM fracvehicles WHERE FracID = '%d'", sInfo[playerid][fraktion]);
mysql_function_query(dbhandle,query,false,"OnCountCheck","d",playerid);
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessageEx(playerid,ROT,"Dann eben nicht ...");
}
return 1;
}
forward OnCountCheck(playerid);
public OnCountCheck(playerid)
{
if(cache_get_row_int(0,0,dbhandle) < 15)
{
GivePlayerMoney(playerid,-fahCars[id][fa_preis]);
new Float:x, Float:y, Float:z, Float:a;
fahCars[id][fc_modelID] = fahCars[id][fa_model];
fahCars[id][fa_x] = x;
fahCars[id][fa_y] = y;
fahCars[id][fa_z] = z;
fahCars[id][fa_r] = a;
fcars[id][fc_fracID] = sInfo[playerid][fraktion];
format(query, sizeof(query), "INSERT INTO FracVehicles (ID, ModelID, PosX, PosY, PosZ, PosA, Color1, Color2, FracID) VALUES ('%d', '%d', '%f', '%f', '%f', '%f', '%d', '%d', '%d')",
id, fcars[id][fc_modelID], fcars[id][fc_x], fcars[id][fc_y], fcars[id][fc_z], fcars[id][fc_a], fcars[id][fc_color1], fcars[id][fc_color2], fcars[id][fc_fracID]);
mysql_tquery(dbhandle, query);
fcars[id][fc_vID] = CreateVehicle(fcars[id][fc_modelID], fcars[id][fc_x], fcars[id][fc_y], fcars[id][fc_z], fcars[id][fc_a], -1, -1, -1);
new str[10],plate;
plate = GetFreeNumberPlate();
fcars[id][e_plate] = plate;
format(str, sizeof(str), "SA-%d", fcars[id][e_plate]);
SetVehicleNumberPlate(fcars[id][fc_vID],str);
PutPlayerInVehicle(playerid, fcars[id][fc_vID], 0);
RemovePlayerFromVehicle(playerid);
return 1;
}
else
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,ROT,"Deine Fraktion hat genug Fahrzeuge!");
}
return 1;
}
Versuche es so.