Probleme de boucle php avec tableau html
Fermé
ttam03
Messages postés
2
Date d'inscription
jeudi 11 juin 2009
Statut
Membre
Dernière intervention
11 juin 2009
-
11 juin 2009 à 09:56
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 - 11 juin 2009 à 15:59
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 - 11 juin 2009 à 15:59
A voir également:
- Probleme de boucle php avec tableau html
- Tableau croisé dynamique - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Editeur html - Télécharger - HTML
- Trier tableau excel - Guide
2 réponses
pyschopathe
Messages postés
1974
Date d'inscription
dimanche 2 mars 2008
Statut
Membre
Dernière intervention
22 mars 2010
135
11 juin 2009 à 10:59
11 juin 2009 à 10:59
Je te conseille plutôt un code de ce genre :
<?php $images = array(); while ( $donnees = mysql_fetch_assoc ($requete) ) { $images[] = $donnees; } if ( count( $images ) != 12 ) die( 'Pas le bon nombre d'images' ); echo '<div id="action">'; echo '<table>' // on boucle sur les lignes for ( $i=0 ; $i<3 ; ++$i ) { echo '<tr>'; for ( $j=0 ; $j<4 ; ++$j ) { echo '<img src="factures/'.$images[$i*$j]['lien_factures'].'" alt="'.$images[$i*$j]['id_factures'].'" width="100" height="100" />'; } echo '</tr>'; } echo '</table>'; echo '</div>';Plus propre, plus rapide, plus lisible, et ça devrait faire ce que tu veux.
ttam03
Messages postés
2
Date d'inscription
jeudi 11 juin 2009
Statut
Membre
Dernière intervention
11 juin 2009
1
11 juin 2009 à 11:07
11 juin 2009 à 11:07
Merci de m'avoir répondu. Mais ça me marque "Pas le bon nombre d'images". Ce qui est normale car je n'ai pas 12 images encore, chaque mois je rajoute une photo... (Actuellement j'ai 7 photos donc normalement il y a une ligne de 4 images et une autre de 3 images. Désolé de m'être mal exprimé, Peux tu encore m'aider ?
pyschopathe
Messages postés
1974
Date d'inscription
dimanche 2 mars 2008
Statut
Membre
Dernière intervention
22 mars 2010
135
11 juin 2009 à 15:59
11 juin 2009 à 15:59
Effectivement, ça change des choses >_<. Je modifie le code et je te le renvoie.
edit : voilà le code :
edit : voilà le code :
$images = array(); while ( $donnees = mysql_fetch_assoc ($requete) ) { $images[] = $donnees; } $nbImages = count( $images ); if ( $nbImages < 12 ) { for ( $i=$nbImages ; $i<12 ; ++$i ) { $images[] = null; } } echo '<div id="action">'; echo '<table>' // on boucle sur les lignes for ( $i=0 ; $i<3 ; ++$i ) { echo '<tr>'; for ( $j=0 ; $j<4 ; ++$j ) { if ( $images[$i*$j] !== null ) { echo '<td><img src="factures/'.$images[$i*$j]['lien_factures'].'" alt="'.$images[$i*$j]['id_factures'].'" width="100" height="100" /></td>'; } else { echo '<td></td>'; } } echo '</tr>'; } echo '</table>'; echo '</div>';Avec ce code, le tableau sera intégralement construit, mais certaines cellules seront vides si tu n'as pas le bon nombre d'images. A toi de modifier le style des cellules vides en fonction de ce que tu souhaite voir apparaitre.