Parcourir BDD dans tableau multicolone php

Bonjour,

J'ai fait un tableau multicolone en php et j'aimerais afficher ma base de donnees et je galere vraiment !!!!!

<?php
$connexion = mysql_connect("localhost:8889", "root","root")or die("Erreur de connexion");
mysql_select_db('test',$connexion)or die("Base introuvable");
?>
<?php
//----------------------- Debut Tableau
$nbligne=3;
$nbcolone=2;
$limit=$nbligne*$nbcolone;
$sql="SELECT * FROM livredor LIMIT $limit ";
$req=mysql_query($sql);

?>
<table border="2">
<?php
for($i=0;$i<$nbligne; $i++){
echo "<tr>";

for($j=0;$j<$nbcolone; $j++){

echo "<td>";

echo "TABLE";

echo "</td>";

}

echo "</tr>";
}
//----------------- Fin tableau
?>
</table>

4 réponses

  1. Bonjour, comment faire pour récupérer les autres données du tableau sur la même page rechargé?
    1. Bonjour,

      Ton code de départ n'est pas très loin de ce que tu veux.
      Voici ce que je te propose :
      <?php
      $connexion = mysql_connect("localhost:8889", "root","root")or die("Erreur de connexion");
      mysql_select_db('test',$connexion)or die("Base introuvable");
      ?>
      <?php
      //----------------------- Debut Tableau
      $nbligne=3;
      $nbcolone=2;
      $limit=$nbligne*$nbcolone;
      $sql="SELECT * FROM livredor LIMIT $limit ";
      $req=mysql_query($sql);
      
      ?>
      <table border="2">
      <?php
      for($i=0;$i<$nbligne; $i++)
      {
          echo "<tr>";
      
          for($j=0;$j<$nbcolone; $j++)
          {
              echo "<td>";
              if ($donnees = mysql_fetch_array($req))
                  echo $donnees['nomColonne'];
              else
                  echo '-';
      
              echo "</td>";
          }
      echo "</tr>";
      }
      //----------------- Fin tableau
      ?>
      </table> 


      Xavier
      1. Contributeur
        <?php
        	$limit = "ton nombre de lignes";
        	$connexion = mysql_connect("localhost:8889", "root","root")or die("Erreur de connexion");
        	mysql_select_db('test',$connexion)or die("Base introuvable");
        	$sql="SELECT * FROM livredor LIMIT $limit ";
        	$req=mysql_query($sql);
        ?>
        
        <table>
        	<tr>
        		<?php
        			$i = 0;
        			while($result=mysql_fetch_array($req))
        			{ 
        		?>
        		<td>
        			<?php
        				echo "$result['colone1'];
        				$i++;
        			?>
        		</td>
        		<?php
        				if ($i = 3)
        				{
        					$i = 0;
        		?>
        	</tr>
        	<tr>
        		<?php
        				}
        			}
        		?> 
        	</tr>
        </table>
        


        Et là?

        Tu n'affiche qu'un champ par enregistrement c'est bien ça?
        1. Oui j'affiche un resultat par champ mais en multicolone par sur une seule

          Merci pour ton aide
          <?php
          $limit =5;
          $connexion = mysql_connect("localhost:8889", "root","root")or die("Erreur de connexion");
          mysql_select_db('test',$connexion)or die("Base introuvable");
          $sql="SELECT * FROM livredor LIMIT $limit ";
          $req=mysql_query($sql);
          ?>

          <table>
          <tr>
          <?php
          $i = 0;
          while($result=mysql_fetch_array($req))
          {
          ?>
          <td>
          <?php
          echo $result['id'];
          $i++;
          ?>
          </td>
          <?php
          if ($i = 3)
          {
          $i = 0;
          ?>
          </tr>
          <tr>
          <?php
          }
          }
          ?>
          </tr>
          </table>
        2. Contributeur
          Ca marche ce que je t'ai mis?
        3. euh j'ai corrigé un peu mais c pas vraiment ce que je veux
        4. Contributeur
          Tu as 3 colonnes, et 2 lignes. Au maximum donc 6 cases. Comment tu veux afficher d'avantage de données?
          Tu as quoi dans ta table? ecris moi ce que ça doit t'afficher comme ça:

          25 / 45 /32
          12/ 12 / 12

          Enfin chiffre ou texte, écris moi clairement ce que ça doit faire :)
        5. Alors disons que le tableau affiche les resultat comme ca
          24
          45
          32
          12
          12
          12
          et moi je les voudrais comme cela

          25 / 45 /32
          12/ 12 / 12
      2. Contributeur
        Pfiou! Tu en compliques des choses! Essaie ce code!
        <?php
        $limit = "ton nombre de lignes";
        $connexion = mysql_connect("localhost:8889", "root","root")or die("Erreur de connexion");
        mysql_select_db('test',$connexion)or die("Base introuvable");
        $sql="SELECT * FROM livredor LIMIT $limit ";
        $req=mysql_query($sql);
        ?>
        <table><tr>
        <?php
        while($result=mysql_fetch_array($req))
        { 
        ?>
        <td><?php echo "$result['colone1']; ?></td><td><?php echo "$result['colone2']; ?></td>
        <?php
        }
        ?> 
        </tr></table>


        Tu n'oublieras pas de remplacer les champs en gras par: le nombre de lignes que tu veux extraire de ta base, puis les noms de deux colonnes de ta base.
        1. Merci de ton aide ton script affiche sur une seul ligne et moi en fait au bout de mes trois affichages sur une ligne je voudrais afficher les trois autres dans une seconde ligne donc un tableau de 3 colonnes sur 2 lignes