Thomas: m:n Verknüpfung MySQL + PHP

Beitrag lesen

Guten Abend,

Ich möchte folgendes realisieren:

Die Datenbank soll die Verwaltung eines Fußballteams simulieren. Das heißt es gibt eine Tabelle m_personen, eine Tabelle m_Position und eine Tabelle m_Person_Position. Ein Spieler hat entweder noch gar keine Position zugewiesen bekommen oder hat eine/mehrere Positionen. Die Verarbeitung soll in PHP erfolgen.

m_Position
+----------+-----------------------+
| Field    | Type                  |
+----------+-----------------------+
| id       | smallint(10) unsigned |
| position | varchar(100)          |
+----------+-----------------------+

m_personen
+------------+---------------------+
| Field      | Type                |
+------------+---------------------+
| id         | int(10) unsigned    |
| vorname    | varchar(20)         |
| nachname   | varchar(20)         |
+------------+---------------------+

m_Person_Position
+-------------+------------------+
| Field       | Type             |
+-------------+------------------+
| id          | int(10) unsigned |
| person_id   | int(10) unsigned |
| position_id | int(10) unsigned |
+-------------+------------------+

Wenn ich die dann verknüpfe sieht das so aus:

SELECT p.nachname, b.position
FROM m_personen AS p
LEFT JOIN m_Person_Position AS a ON p.id = a.person_id
LEFT JOIN m_Position AS b ON a.position_id = b.id

+------------+---------------------+
| nachname   | position            |
+------------+---------------------+
| Spieler1   | NULL                |
| Spieler2   | Libero      |
| Spieler3   | Stürmer             |
| Spieler3   | Torwart             |
+------------+---------------------+

Jetzt weiß ich aber nicht mehr weiter. Auf der homepage soll das dann so aussehen:

Spieler1: keine Position
Spieler2: Libero
Spieler3: Stürmer, Torwart

Wie kann ich das vernünftig mit PHP auslesen?

MfG

Thomas