Définir un nombre de colonnes pour un tableau affichant des données d'une requêt [Résolu]

Signaler
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
-
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
-
Salut,

Je suppose que c'est un rpoblème "récurant" mais j'arrive pas à trouver la réponse à mon problème...

J'ai une base SQL avec des données, je souhaite que ma requete pour afficher ses données s'affiche dans un tableau qui a 3 colonnes et un nombre de lignes qui dépends du nombre de résultat.

Actuellement ma requete ressemble à ça :
<?php include "admin/configbdd.php";
           $sql = 'SELECT * FROM Consoles';
        $req = mysql_query($sql) or die('Erreur SQL !
        '.$sql.'
        '.mysql_error());
        while($data = mysql_fetch_array($req))
        {
       echo ' ';
       echo '
'.$data['Nom'].', ';
       echo '
';
        }
        mysql_close();
   ?>

Tout ceci m'affiche un seul résultat par ligne, d'ailleurs le
entre l'affichage du logo et du nom ne marche pas ...

Ce que je souhaiterait, c'est avoir par cellule le logo et en dessous le nom en centré et cela sur 3 colonnes

Je suppose que c'est un truc tout con...
J'ai testé des <th>, <td>, <tr> mais rien qui fonctionne.... et vu que mes connaissances sont plus que limitées... je fais appel à vos lumières

8 réponses

Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
salut essaye ca

<?php 
         include "admin/configbdd.php";
         $sql = 'SELECT * FROM Consoles';
         $req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());
         echo ' ';
         echo '----
';
         $i = 0;
         while($data = mysql_fetch_array($req))
        {
                  echo '
'.$data['Nom'].', ';
                  if($i%3 == 0)
                 {
                           echo '----
';
                  }
                  $i++;
        }
         echo '';
        echo '
';
        mysql_close();
   ?>

si ca marche pas, essaye de bidouiller soit le $i =0, le passer a $i = 1; ou $i%3 == 0 le passer a $i%3 == 1;
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008

Merci, on y est presque !

J'ai du juste retouché le $i =0 en $i = 1 car il me mettais qu'une seule cellule dans la première ligne...

Il me reste plus que le retour à la ligne entre le logo et le nom qui ne marche toujours pas :
http://www.cfccar.com/listeconsoles.php

Merci
Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
tu tiens a la validité w3c ? ou pas ?
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008

Vu que je sais pas exactement en quoi consiste le W3C, je dirais bien non
Je viens de tester ma page d'index.. 96 erreurs et 33 warning... je pense donc que c'estl e cadet de mes soucis actuellement

Sinon, je regarde de mon coté si je peux trouver une solution, j'ai touches quelques paramètres dans le css pour changer l'aspect des tableux et le rendre transparent etc...

 et je me demandait si je pouvais pas simplement mettre un truc du genre display=block ?
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008

Bon.... après plusieurs essais, il s'avère que le display:block dans le css ne fait rien...

Ensuite la balise
 fonctionne.... mais il en faut plusieurs et cela dépend apparement de la taille de l'image.

Mes logos ont la même largeur mais pas la même hauteur, du coup, suivant la hauteur de l'image, il me faut 2, 3 4 voir plus de
pour que le texte finisse par passer en dessous....

Des idées
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008

Trouvé

J'y crois pas, un simple paramètre dans le css...
En voulant centré mes logos, j'ai changé un paramètre (float:center au lieu de float:left) et du coup ça résous mes soucis mon retour à la ligne fonctionne et le tout est centré

Merci de m'avoir filé un coup de main.

Euhhh.... je veux pas pousser mais ma prochaine étape ça va être de transformer les logos+nom en lien pour afficher un page par console

Je peux mêttre un  dans la ligne de mon "echo" du style :
echo '
">
<td>
'.$data['Nom'].'</td>';
Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
ca existe pas float:center
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008

Ah ....  

Et bien chez moi si en en plus ça fait marcher les balise


Vu que j'y connais rien, j'ai vu un float:left, un float:right, alors j'ai mis float:center ... peut être un float:none ?