Voilà 2h que je tourne en rond sur mon problème et j'aurais besoin de votre aide précieuse.
Voici le code, je donnerai plus bas les détails du problème ainsi qu'un lien permettant de voir ce que me retourne le script :
<?php
require("../admin/dbconnect.php");
$requete = mysql_query('SELECT annee, album, numero, titre, artiste, image FROM lyrics ORDER BY annee, artiste, album, numero ASC') OR die('Erreur de la requête MySQL');
mysql_close();
//on définit des variables vides
$annee_precedente="";
$image_precedente="";
$titre_precedent="";
$album_precedent="";
//on lance la boucle
while($resultat = mysql_fetch_object($requete))
{
$numero = $resultat->numero;
//si l'année est différente, on l'affiche
if ($resultat->annee!=$annee_precedente) {
echo $resultat->annee.' : ';
}
//si l'album est différent du précédent, on l'affiche
if ($resultat->album!=$album_precedent) {
echo '<a onclick=\'switchMenu(\''.$resultat->album.'\');\'>'.$resultat->album.'</a><div id='.$resultat->album.'><br><table style=\'text-align: left; width: 100%;\' border=1 cellpadding=2 cellspacing=0><tbody><tr><td
style=\'width: 200px; vertical-align: top;\'><div
id="picture">';
}
//si l'image est différente, on l'affiche
if ($resultat->image!=$image_precedente) {
echo'<a href='.$resultat->image.' rel=lightbox><img src='.$resultat->image.' /></a></div></td><td style=\'vertical-align: top;\'>';
}
//si le titre est différent, on l'affiche
if ($resultat->titre!=$titre_precedent) {
echo $resultat->numero.'. '.$resultat->titre.'<br>';
}
//si l'album est différent, on termine le tableau <- PROBLEME A CE NIVEAU
if($resultat->album!=$album_precedent) {
echo '</td></tr></tbody></table><br><br>';
}
//on redéfinit les variables pour le prochain tour de boucle
$annee_precedente=$resultat->annee;
$image_precedente=$resultat->image;
$titre_precedent=$resultat->titre;
$album_precedent=$resultat->album;
}
?>
Avant d'entrer dans les détails, voici l'adresse du script permettant de voir réellement le résultat : Cliquez ici.Le but est d'afficher la playlist d'un album et son cover dans un tableau précédé de l'année et du titre de l'album. Le problème est que le tableau est "fermé" avant que toute la trackinglist de l'album concerné y soit insérée.
Je pense que cela vient du fait que je définis une variable vide
$album_precedent="";
puis que j'ordonne de fermer le tableau lorsque la requête retourne un titre d'album différent du précédent :
if($resultat->album!=$album_precedent) {
echo '</td></tr></tbody></table><br><br>';
}
Que la variable $album_precedent soit définie comme vide ou même qu'elle ne soit pas défini du tout, le résultat de la requête est forcément différent donc le tableau se retrouve fermé.Je n'ai aucune idée de comment faire autrement...
Je me permets donc de faire appel à vous, d'autant plus que le site doit être bouclé dans 15 jours et que je suis loin d'avoir fini.
En vous remerciant par avance,
Bien cordialement,
Robin.
qui s'affiche en haut à gauche de ce sujet