Hallo dedlfix,
Beschreibe bitte die Dinge (auch) aus der Sicht des Programms! Wieso wird immer nur die letzte Person angezeigt? Überschreibst du deine Daten, so dass immer nur der letzte Datensatz übrigbleibt, oder passiert irgendwas ganz anderes?
Wenn ich das wüsste, hätte ich das Problem wahrscheinlich nicht... Ich denke, dass die Daten überschrieben werden, da die Werte in der Spalte "position" mehrfach vorkommen.
Dann musst du vermutlich deine Daten so organisieren, dass zuerst nach Position gruppiert wird und darin die Leute aufgelistet sind. Kann man durch eine weitere Verschachtlungsebene hinbekommen.
Wie bekomme ich denn eben jene weitere Verschachtelungsebene hin?
Ich mache es aktuell so:
while ($row_pos=mysql_fetch_object($result_pos))
{
$array[$row_pos->position]=array($row_pos->ID, $row_pos->nachname, $row_pos->vorname);
}
echo $array["position1"][0]; // ID der Person mit der Position "position1"
Hier wird nur die letzte Person einer Position angezeigt. Ich hoffe, das hilft dir weiter (mehr als diese while-Schleife passiert aktuell nicht mehr).
Die Daten werden folgendermaßen aus der Tabelle ausgelesen:
"SELECT * FROM auslistung WHERE team='1' ORDER BY pos_nr ASC"
Zur Erklärung: Jeder Position ist eine Nummer zugeordnet (von 1 bis 7).