[/PHP]Hallo,
bin neu hier und auch die php mysql Geschichte ist noch recht neu für mich.....
deshalb hoffe ich auf Hilfe:
Folgende Situation:
Es gibt zwei Tabellen, eine mit Alben und eine mit Songs.
Gemeinsamer Schlüssel ist die albumid. Anhand dieser würde ich gerne die Songs
nach Alben sortiert und gruppiert ausgeben.
Das sortieren gelingt mir mit unten stehendem left join auch schon, aber wie bekomme ich es hin, dass der Albumtitel jeweils nur einmal angezeigt wird und dazu jeweils die dazugehörigen Songs (unterschiedliche Anzahl)?
album:
id | categoryid | albumtitle
------------------------------------------
5 | 3 | albumtitle1
6 | 3 | albumtitle2
7 | 3 | albumtitle3
songs:
id | albumid | songtitle
------------------------------------------
1 | 5 | song1a
2 | 5 | song2a
3 | 5 | song3a
4 | 6 | song1b
5 | 6 | song2b
6 | 7 | song1c
7 | 7 | song2c
Gewünschte Ausgabe:
albumtitle1:
song1a
song2a
song3a
albumtitle2:
song1b
song2b
albumtitle3
song1c
song2c
Mit "GROUP BY album.id " hab ich es auch schon probiert, dann bekomme ich aber jeweils nur einen Song zu jedem Album ausgegeben...
Wäre für jeden Tip dankbar!
Grüße, Bastian!
bin neu hier und auch die php mysql Geschichte ist noch recht neu für mich.....
deshalb hoffe ich auf Hilfe:
Folgende Situation:
Es gibt zwei Tabellen, eine mit Alben und eine mit Songs.
Gemeinsamer Schlüssel ist die albumid. Anhand dieser würde ich gerne die Songs
nach Alben sortiert und gruppiert ausgeben.
Das sortieren gelingt mir mit unten stehendem left join auch schon, aber wie bekomme ich es hin, dass der Albumtitel jeweils nur einmal angezeigt wird und dazu jeweils die dazugehörigen Songs (unterschiedliche Anzahl)?
album:
id | categoryid | albumtitle
------------------------------------------
5 | 3 | albumtitle1
6 | 3 | albumtitle2
7 | 3 | albumtitle3
songs:
id | albumid | songtitle
------------------------------------------
1 | 5 | song1a
2 | 5 | song2a
3 | 5 | song3a
4 | 6 | song1b
5 | 6 | song2b
6 | 7 | song1c
7 | 7 | song2c
Gewünschte Ausgabe:
albumtitle1:
song1a
song2a
song3a
albumtitle2:
song1b
song2b
albumtitle3
song1c
song2c
PHP-Code:
///AKTUELLES ALBUM
require_once('../includes/DbConnector.php');
$connector = new DbConnector();
$result = $connector->query(
"SELECT
album.id, album.categoryid, album.albumtitle,songs.songtitle
FROM
album
LEFT JOIN songs
ON album.id = songs.albumid
WHERE
album.categoryid = 3 ");
while ($row = $connector->fetchArray($result, MYSQL_ASSOC)){
$idalbum = stripslashes($row['id']);
$titlealbum = stripslashes($row['albumtitle']);
$songs = stripslashes($row['songtitle']);
$albumliste .= '<div id="AlbumTitle">'.$titlealbum.':</div>
//////das hier klappt alles natürlich so nicht..... aber wie?
<div id="Songs">'.$songs.'</div>';
}
echo $albumliste;
Wäre für jeden Tip dankbar!
Grüße, Bastian!
Kommentar