Guten Abend,
ich wollte eine Mitgliederliste für die Fraktionsleader machen das Problem ist nur das ich aus einer anderen Tabelle den Charakternamen brauche und meine Funktion um den Charakternamen zu bekommen beendet immer die aktuelle Query wodurch mir immer nur ein Fraktionsmitglied angezeigt wird.
Die Query womit man alle Fraktionsmitglieder bekommt
Code
mysql_format(connection, query, sizeof(query), "SELECT * FROM `character_job` WHERE `faction` = '%i'", CharacterInfo[playerid][CHARACTER_FACTION]);
mysql_tquery(connection, query, "GetFactionMember", "i", playerid);
GetFactionMember
Code
callback GetFactionMember(playerid)
{
new rows, string[256], tempString[256], cid, rang;
cache_get_row_count(rows);
if(rows)
{
for(new i = 0; i < rows; i++)
{
cache_get_value_name_int(i, "characterid", cid);
cache_get_value_name_int(i, "rang", rang);
format(string, sizeof(string), "{FFFFFF}%s\t%s\n", getCharacterNameById(cid), FactionRangInfo[CharacterInfo[playerid][CHARACTER_FACTION]][rang][FACTION_RANG_NAME]);
strcat(tempString, string, sizeof(tempString));
}
format(string, sizeof(string), "{FFFFFF}Name\t{FFFFFF}Rang\n%s", tempString);
ShowPlayerDialog(playerid, DIALOG_FACTION_MEMBER, DIALOG_STYLE_TABLIST_HEADERS, "{FFFFFF}Verwaltung : Fraktion", string, "{FFFFFF}Zurück", "", 5);
}
return 1;
}
Alles anzeigen
Funktion um den Charakternamen zu bekommen
Code
getCharacterNameById(id)
{
new query[128];
mysql_format(connection, query, sizeof(query), "SELECT `firstname`, `lastname` FROM `character` WHERE `id` = '%i'", id);
new Cache:result = mysql_query(connection, query);
new name[256], firstname[128], lastname[128];
cache_get_value_name(0, "firstname", firstname, 128);
cache_get_value_name(0, "lastname", lastname, 128);
format(name, sizeof(name), "%s_%s", firstname, lastname);
cache_delete(result);
return name;
}
Alles anzeigen
Mit freundlichen Grüßen
Allrounder18