Ca fait 2 jours que je m'arrache la tête sur un pb d'affichage...
Je veux afficher des news avec une mise en page différente selon les cas.
J'ai un fichier de requête, faisant appel à un autre pour un autre type de mise en page.
L'affichage fonctionne, si ce n'est que s'ajoute le chiffre "1" (correspondant au nb d'enregistrement, je présume) à la fin de l'affichage des données désirées.
Merci de votre aide.
Voici le code de la page "news.php"
// recup des DISKS
$requete1 = mysql_query ("SELECT d.disk_id, d.disk_titre, d.disk_titre2, d.news_txt, d.disk_format, d.disk_img, d.disk_bando, d.disk_ituneslien, l.label, m2.menu2_titre FROM disk d LEFT JOIN artiste_infos ai ON (d.disk_id = ai.disk_id) LEFT JOIN menu2 m2 ON (m2.menu2_id = ai.menu2_id) LEFT JOIN label l on (d.label_id = l.label_id) WHERE ai.artiste_id = '".$artist_id."' AND d.news = '1' ORDER BY m2.menu2_order, d.date") or die('Erreur : ' . mysql_error());
while ($resultat1 = mysql_fetch_array($requete1)){
// recup des TRACKS
$requete2 = mysql_query ("SELECT t.track_titre, t.track_mp3 FROM disk d, track t, disk_track dt WHERE d.disk_id = '".$resultat1[disk_id]."' and d.disk_id = dt.disk_id and t.track_id = dt.track_id ORDER BY dt.ordre")or die('Erreur : ' . mysql_error());
while ($resultat2 = mysql_fetch_array($requete2)){
// conditions d'affichage des TRACKS
if ($resultat2[track_mp3] == '' ) {
$track = '<span class="txt9noir">'.$resultat2[track_titre].'</span>';
} else {
$track = '<span class="txt9noir">'.$resultat2[track_titre] .' <a href="extraitson/'.$resultat2[track_mp3].'" target="_blank"><img src="visuels/iconeSON.GIF" width="11" height="12" align="absmiddle" border="0"></a></span>';
}
// conditions d'affichage d'infos DISK
if ($resultat1[disk_titre2] == '') {
$titre = '<span class="txt10gras">'.strtoupper($resultat1[disk_titre]).'</span>';
} else {
$titre = '<span class="txt10gras">'.strtoupper($resultat1[disk_titre]). ' ' . $resultat1[disk_titre2]. '</span>';
}
// affichage du disk selon DISK - REMIX - COMPIL (avec image ou non)
if ($resultat1[menu2_titre] == 'compilations') {
$disk = '<td colspan="2" width="505"><span class="txt9noirGras">new compilation: '.$track.' on '.$titre.'</span>';
} elseif ($resultat1[menu2_titre] == 'remixes') {
$disk = '<td colspan="2" width="505"><span class="txt9noirGras">new remix for '.strtoupper($resultat1[disk_titre2]).': '.$track.' on "'. $resultat1[disk_titre].'"</span>';
} else {
$disk = include ("tracks");
}
echo "$disk</td></tr><tr><td colspan='2' width='505' class='txt7noir'> </td></tr>";
}
}
echo '</table></td></tr>';
} else {
echo '';
}
}
Et celui de "tracks.php" appelé
<?php
$requete2 = mysql_query ("SELECT t.track_titre, t.track_mp3 FROM disk d, track t, disk_track dt WHERE d.disk_id = '".$resultat1[disk_id]."' and d.disk_id = dt.disk_id and t.track_id = dt.track_id ORDER BY dt.ordre")or die('Erreur : ' . mysql_error());
// AFFICHAGE de la pochette (pas de bandeau)
if ($resultat1[disk_bando] == '' ) {
$n = mysql_num_rows($requete2); // compte le nb d'enregistrements
if ($n > '0') { //j'ai au moins un titre!!
$compteur = 0;
$valeur = $n/2;
$valeur = ceil($valeur); // arrondi
echo '<td width="110" align="left" valign="top"><img src="visuels/poch/'.$resultat1[disk_img].'"></td>
<td width="395" align="left" valign="top">'.$titre.'<br><br><table width="350"><tr valign="top"><td width="170" class="txt8noir">';
while ($resultat2 = mysql_fetch_array($requete2)) {
if ($compteur == $valeur){
echo "</td><td width='10' class='txt7noir'></td><td width='170' class='txt8noir'>"; // tu changes de colonne
$compteur = 0; // tu remet le compteur a zéro
}
if ($resultat2[track_mp3] == '' ) {
$track = $resultat2[track_titre];
} else {
$track = $resultat2[track_titre] .' <a href="extraitson/'.$resultat2[track_mp3].'" target="_blank"><img src="visuels/iconeSON.GIF" width="11" height="12" align="absmiddle" border="0"></a>';
}
echo "$track<br>";
$compteur++; // ajoute 1 au compteur a chaque passage
}
}
echo "</td></tr></table>";
}else {
// affichage du BANDEAU
echo '<img src="visuels/bandeaux/'.$resultat1[disk_bando].'" align="absmiddle" width="440" border="0"><br>';
while ($resultat2 = mysql_fetch_array($requete2)) {
if ($resultat2[track_mp3] == '' ) {
$track = $resultat2[track_titre];
} else {
$track = $resultat2[track_titre] .' <a href="extraitson/'.$resultat2[track_mp3].'" target="_blank"><img src="visuels/iconeSON.GIF" width="11" height="12" align="absmiddle" border="0"></a>';
}
echo "$track ";
}
}
?>