Tableau dynamiques avec plusieurs colonnes
Résolu
missou55
Messages postés
52
Statut
Membre
-
SniperPS -
SniperPS -
Bonjour,
J'aimerai afficher du texte dans un tableau qui vient de la base de donnee.
Ce qui veut dire que mon tableau sera en affichage dynamique,
Pour un affichage dynamique juste avec les lignes, je fais
Mais comment je fais pour y mettre 3 colonnes aussi dynamiques?
Merci de votre aide
J'aimerai afficher du texte dans un tableau qui vient de la base de donnee.
Ce qui veut dire que mon tableau sera en affichage dynamique,
Pour un affichage dynamique juste avec les lignes, je fais
<?php
while ( $row =mysql_fetch_array($sql_res) )
{ ?>
<tr> ...</tr>
<?php } ?>
Mais comment je fais pour y mettre 3 colonnes aussi dynamiques?
Merci de votre aide
4 réponses
-
j'ai trouver la reponse, pour ceux que ca interresse, voici le code
<?php $nbCols = 3; // nombre de colonnes du tableau $cpt = 0; // compteur d'éléments ?> <table> <tr> <th style="width:<?php echo round(100/$nbCols);?>%;">Colonne 1</th> <th style="width:<?php echo round(100/$nbCols);?>%;">Colonne 2</th> <th style="width:<?php echo round(100/$nbCols);?>%;">Colonne 3</th> </tr> <?php $rs = mysql_query(...); // exécution de la requête // Nota : on pourrait tout aussi bien parcourir les éléments d'un tableau ou les fichiers d'un dossier while ($row=mysql_fetch_assoc($rs)) { // parcours des résultats // début d'une ligne if ($cpt%$nbCols==0) // on divise le nb d'élément par le nb de colonnes. Si le reste est de 0 ... echo '<tr>'; // ..., alors on est sur le premier élément d'une ligne // On place chaque élément dans une cellule du tableau echo '<td>'; echo ... // affichage de tout ce qu'on veut dans la cellule echo '</td>'; // fin d'une ligne if ($cpt%$nbCols==($nbCols-1)) // on divise le nb d'élément par le nb de colonnes. Si le reste est de ($nbCols-1) ... echo '</tr>'; // ..., on est sur le dernier élément d'une ligne $cpt++; // on incrémente le compteur pour savoir où on en est } // Au cas où ... if ($cpt!=0 && $cpt%$nbCols!=0) { // S'il n'y a pas eu assez de cellules dans la boucle pour finir la ligne ... echo '<td colspan="'.($nbCols - ($cpt%$nbCols) ).'"> </td>'; // ... on complète avec une cellule vide de la bonne taille... echo '</tr>'; // ... et on ferme la ligne } ?> </table>
je tiens a préciser que le code n'est pas de moi mais il marche, alors merci a son createur -
Tu sais être plus complet dans ta demande ?
Parce que jusque la je te proposerais :
<?php
while ( $row =mysql_fetch_array($sql_res) )
{ ?>
<tr><td>...</td><td>...</td><td>...</td></tr>
<?php } ?> -
Je te conseille de le faire avec des div, c'est plus souple et ça ne déborde pas.
Les tableau c'est de la préhystoire -
Pour repondre a tompsy, le probleme de ce que tu me propose, c'est que je dois integrer plusieurs valeurs ou variables diferentes dans chaque <td> </td>
Mais je voudrai afficher toujours la meme variable, c'est dire $row['article'] et parcourir toute ma base de donnee.
Avez-vous une idée?