Tableau dynamiques avec plusieurs colonnes

Résolu
missou55 Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   -  
 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

<?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
A voir également:

4 réponses

missou55 Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   4
 
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) ).'">&nbsp;</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
2
tompsy Messages postés 251 Date d'inscription   Statut Membre Dernière intervention   50
 
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 } ?>
0
SniperPS
 
ce code est valable pour afficher du contenu statique, imagine qu'on veut remplacer tes "..." par du contenu dynamique qui vient de la base de données, alors ça doit changer !
0
briiiiix Messages postés 575 Date d'inscription   Statut Membre Dernière intervention   18
 
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
0
missou55 Messages postés 45 Date d'inscription   Statut Membre Dernière intervention   4
 
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?
0