Tach!
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.
Wenn du nicht weißt, was dein selbst geschriebenes Programm macht, dann solltest du es beim Ausführen beobachten. Dazu haben sich Kontrollausgaben zum Beispiel von Variableninhalten bewährt.
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"
Du machst das immer noch unnötig umständlich. Du hast dich zwar für meine erste Antwort bedankt, sie aber nicht gelesen oder nicht verstanden. Schade. Wie auch immer, wenn in $row\_pos->position 42 steht, wird unter diesem Schlüssel das aktuelle Personenarray abgelegt. Wenn beim nächsten Durchlauf wieder eine Person mit 42 kommt, was passiert dann? Sie wird wieder diesem Schlüssel zugewiesen und der alte Wert geht verloren. Du brauchst an der Stelle also eine Möglichkeit, mehrere Werte unter der 42 ablegen zu können.
> > 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?
$array['42'] sollte nicht nur ein Einpersonen-Array enthalten sondern zunächst ein Array und in dem sollten die Personendatensätze/-arrays zu liegen kommen.
print\_r($array) sollte am Ende sowas ergeben:
Array (
[42] => Array (
[0] => Array ( personendaten )
[1] => Array ( weitere person )
)
)
Derzeit sieht es so aus (und lass dir das mit print\_r() bestätigen):
Array (
[42] => Array ( weitere person )
)
dedlfix.