Bonjour à tous.

Voilà bien une semaine que je me creuse la cervelle sur un code sans grand succès.

Voici ma situation : Je suis en train de créer un site qui répertorie la discographie des groupes de rock (c'est pour un projet scolaire).
Chaque groupe aura droit à une page, et sur cette page seront affichés les titres des albums suivis des titres des chansons contenues dedans.

Voici une url pour vous donner une idée de la chose : http://rockdatabase.free.fr/metallica.php (ne faites pas attention à l'anarchie ambiante, je viens de commencer ).


Comme vous le voyez, j'ai un problème d'affichage avec les chansons du cadre. Je voudrais que les chansons d'un même album soient contenues dans le même cadre que ce dernier, mais là il me crée un nouveau cadre pour chaque chanson. Le seul point positif, c'est que pour l'instant les chansons sont au moins associées au titre de l'album correspondant.


Pour l'instant j'ai crée deux tables dans ma BDD : La table "album" et la table "chanson".

Album contient les champs suivants : id_album , titre_album , annee_sortie , nbre_chansons.
Chanson contient les champs suivants : id_chanson, titre_chanson , num_piste , ref_album.

ref_album contient à chaque fois le chiffre de id_album de l'album concerné.


Enfin voici le code de la page :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php 
$reponse = mysql_query("SELECT * FROM album, chanson WHERE album.id_album = chanson.ref_album");
?>
 
[...]
 
<?php 
while ($donnees = mysql_fetch_array($reponse) )
{
?>		
    <div class="cadre_chansons">
	<?php echo $donnees['titre_album']; ?>
	<?php echo $donnees['titre_chanson']; ?>
    </div>
<?php
}
?>
Je pense savoir comment faire : il faudrait placer une seconde boucle dans la première boucle juste après le "titre_album", spécifiant d'afficher toutes les chansons de l'album en question dont le ref_album est équivalent au id_album. Seulement je n'ai aucune idée de comment coder ni agencer tout ça.

Voilà à peu près où j'en suis. Je nage complètement depuis plusieurs jours pour afficher correctement ce bout de code, sans succès.

Toute aide serait très grandement appréciée. Merci.