Affichage de données en tableau sur 2 ou 3 colonnes

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Affichage de données en tableau sur 2 ou 3 colonnes

par pitt » 02 déc. 2005, 15:49

Pas mal, mais il va manquer le <tr> de début et le </tr> de fin : à rajouter donc respectivement juste après le <table> et juste avant ;e </table>
Tu as raison mais quand tu ne mets pas le <tr> de début il est automatiquement mis de même pour le </tr> de fin.

Mais tu as raison

par Cyrano » 02 déc. 2005, 15:23


echo "<TABLE>"; 
$i = 0; 
while( $ligne = mysql_fetch_array( $resultat )) 
   {
if (($i!=0)&&($i % 2 ==0)) {echo "</tr><tr>";} 
    echo "<td>" . $ligne['asin'] . "</td> 
        <td>" . $ligne['image'] ."></td> 
        "; $i++;
   } 
echo "</TABLE>"; 
?> 
Pas mal, mais il va manquer le <tr> de début et le </tr> de fin : à rajouter donc respectivement juste après le <table> et juste avant ;e </table>

Pour faire ça proprement, ce sera donc:
<table>
  <tr>
<?php
$i = 0;
while( $ligne = mysql_fetch_array( $resultat ))
{
    if (($i!=0)&&($i % 2 ==0))
    {
?>
  </tr>
  <tr>
<?php
    }
?>
    <td><?php echo($ligne['asin']); ?></td>
    <td><?php echo($ligne['image']); ?></td>
<?php
    $i++;
}
?>
  </tr>
</table>

par Mike974 » 02 déc. 2005, 14:46

Merci de votre aide, j'ai pu, grâce à vos idées, construire mon tableau comme je le souhaitais.

encore merci de vos réponses rapides et efficaces 8)

Mike : http://runraid.free.fr

par pitt » 02 déc. 2005, 12:45


echo "<TABLE>"; 
$i = 0; 
while( $ligne = mysql_fetch_array( $resultat )) 
   {
if (($i!=0)&&($i % 2 ==0)) {echo "</tr><tr>";} 
    echo "<td>" . $ligne['asin'] . "</td> 
        <td>" . $ligne['image'] ."></td> 
        "; $i++;
   } 
echo "</TABLE>"; 
?> 

par daoud » 02 déc. 2005, 10:21

Salut,

Voici une idée :
- récupère le nombre d'enregistrements retournés
- teste si le nombre est pair ou impair (modulo 2)
- si c'est impair ajoute la balise td

a+

Affichage de données en tableau sur 2 ou 3 colonnes

par Mike974 » 02 déc. 2005, 07:15

Je viens de lire un post précédent sur ce même thème mais mon problème est un peu différent ...
Actuellement j'affiche mes enregistrements (2 champs) sur une même ligne : pas de souci avec le script simplifié ci-dessous (</tr> à chaque lecture):

Code : Tout sélectionner

echo "<TABLE>"; $i = 0; while( $ligne = mysql_fetch_array( $resultat )) {$i ++; echo "<tr><td>" . $ligne['asin'] . "</td> <td>" . $ligne['image'] ."></td> </tr>"; } echo "</TABLE>"; ?>
Maintenant je voudrai changer ce script pour afficher mes données sur 2 colonnes en gérant correctement la fin du tableau; le nombre d'enregistrements de ma table peut être impair ... et j'ai un souci pour ajouter le dernier <td></td>

Merci de vos lumières.