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

Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
- - Dernière réponse : stark_2097
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
- 16 sept. 2008 à 16:41
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
Afficher la suite 

8 réponses

Meilleure réponse
Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
3
Merci
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;

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 219 internautes nous ont dit merci ce mois-ci

Commenter la réponse de TheGorgo
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
0
Merci
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
Commenter la réponse de stark_2097
Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
0
Merci
tu tiens a la validité w3c ? ou pas ?
Commenter la réponse de TheGorgo
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
0
Merci
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 ?
Commenter la réponse de stark_2097
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
0
Merci
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
Commenter la réponse de stark_2097
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
0
Merci
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>';
Commenter la réponse de stark_2097
Messages postés
224
Date d'inscription
mercredi 23 mai 2007
Statut
Membre
Dernière intervention
8 septembre 2014
1
0
Merci
ca existe pas float:center
Commenter la réponse de TheGorgo
Messages postés
28
Date d'inscription
samedi 3 décembre 2005
Statut
Membre
Dernière intervention
19 septembre 2008
0
Merci
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 ?
Commenter la réponse de stark_2097