Hallo,
wie kann ich im Script abfragen wie viele Spieler z.B. in einer Fraktion sind.
Das Account System läuft über MySQL.
Gruß
Manuel
Hallo,
wie kann ich im Script abfragen wie viele Spieler z.B. in einer Fraktion sind.
Das Account System läuft über MySQL.
Gruß
Manuel
Dafür müsste man den Aufbau deiner SQL-Tabelle bezüglich Fraktionseinteilungen kennen.
Du musst (ich weiß nicht wo du die Fraktionsmember speicherst) mit COUNT arbeiten. Ich vermute mal so: SELECT COUNT(*) WHERE fraktion ='1' ... irgendwie so Bin grad am Handy.
Am besten mal google benutzen.
Du musst (ich weiß nicht wo du die Fraktionsmember speicherst) mit COUNT arbeiten. Ich vermute mal so: SELECT COUNT(*) WHERE fraktion ='1' ... irgendwie so Bin grad am Handy.
Am besten mal google benutzen.
Du meinst z.B. so?
format(Query,sizeof(Query),"SELECT COUNT(*) FROM `accounts` WHERE `Fraktion` = '%d'", frakid);
Wenn du weißt um welche Fraktion es sich handelt, reicht mysql_num_rows (denke, das sollte es auch für SA-MP geben)
[/pwn]format(Query, sizeof(Query), "SELECT * FROM `accounts? WHERE `Fraktion` = '%d', frakid);
mysql_query(Query);
mysql_store_result();
// resultat = mysql_num_rows();[/pwn]
Und dann am ende
return resultat;
?
Nein, mysql_num_rows() sollte selbst bereits die Anzahl der Ergebnisse wiedergebe, also
return mysql_num_rows();
Bin mir diesbezüglich allerdings nich sicher, ob das bei allen Plugins so klappt PHP-technisch wäre dies i.O.
Ich habe es mal so jetzt gemacht:
stock mysql_CheckFraktion(frakid)
{
new Query[128],count;
format(Query,sizeof(Query),"SELECT COUNT(*) FROM `accounts` WHERE `Fraktion` = '%d'", frakid);
mysql_query(Query);
mysql_store_result();
count = mysql_num_rows();
return count;
}
Ja, Manuel, so mein ich das. Hast du die Möglichkeit es auszuprobieren?
Was ist dein Ziel und was willst du realisieren?
Das "COUNT" macht in diesem Fall absolut keinen Sinn.
/ Edit ebenso ist die Zeile "count = mysql_num_rows();" verschwendung.
Da kann man auch direkt return mysql_num_rows(); schreiben. Wofür erst unnötig ne Variable deklarieren?
Okay habe es mal eingebaut, hat geklappt, danke an euch.