Afficher plusieurs lignes de resultats

touchepas -  
 touchepas -
Bonjour,

j'ai fais une table à 2 lignes dont les résultat de la recherche s'affiche dans des <input>. Jusqu'à présent tout va bien sauf que je ne sait pas comment faire pour pouvoir afficher un nombre varié de ligne ligne aux résultats de la recherche. j'utilise mysql_fetch_assoc pour les requêtes dans chaque input.

php/mysql

2 réponses

  1. Zhp Messages postés 213 Statut Membre 37
     
    Bonjour,

    Ta réponse est sur la doc en ligne :
    https://www.php.net/manual/fr/function.mysql-fetch-assoc.php
    regarde le première exemple ^^

    N'oublie pas php.net est ton ami !
    0
    1. touchepas
       
      bonjour,
      le problème est que je ne connais comment générer de nouvelles lignes contenant le même nombre de champ input et affichant chacune un résultat
      0
    2. des
       
      Ha je vois
      en gros tu dois aussi parcourir ton $row vue que c'st un array
      while ( $row = mysql_fetch_assoc( $result)){
      foreach( $row as $column => $value){
      echo '<input name="'.$column.'" value="'.$value.'">
      }
      }
      0
    3. touchepas
       
      Salut,
      C'est presque cela, mais les champs ne sont pas alignés horizontalement car j'aimerai que avoir un tableau que sera lu par ligne et que s'il y a une information qui n'est pas dans ma base de données que j'ai juste un " / " dans le champ concerné.
      Voici l'extrait du code :
      <table >
      <tr id="entete_table">
      <th>Date</th>
      <th>cours</th>
      <th>prof</th>
      </tr>
      <tr class="donnees_affichees">
      <td> <?php
      $sql = "";
      $result = mysql_query($sql);
      if (mysql_num_rows($result) == 0) {
      echo '<input type="text" value="/">';
      exit;
      }

      while ($row = mysql_fetch_assoc($result)) {
      foreach ($row as $column => $value) {
      echo'<input type="text" name="'.$column.'" value="'.$value.'">';
      }
      }
      mysql_free_result($result);
      ?>
      </td>
      <td><?php
      $sql = "";
      $result = mysql_query($sql);
      if (mysql_num_rows($result) == 0) {
      echo '<input type="text" value="/">';
      exit;
      }

      while ($row = mysql_fetch_assoc($result)) {
      foreach ($row as $column => $value) {
      echo'<input type="text" name="'.$column.'" value="'.$value.'">';
      }
      }
      mysql_free_result($result);
      ?>

      <!-- même chose pour la troisième colonne-->
      </tr>
      </table>
      0
  2. des
     
    Salut l'Ami(e)
    peu tu donner plus de detail ?
    ( ta requete et le resultat que tu attends)

    cordialement
    0
    1. touchepas
       
      Salut,
      C'est presque cela, mais les champs ne sont pas alignés horizontalement car j'aimerai que avoir un tableau que sera lu par ligne et que s'il y a une information qui n'est pas dans ma base de données que j'ai juste un " / " dans le champ concerné.
      Voici l'extrait du code :
      <table >
      <tr id="entete_table">
      <th>Date</th>
      <th>cours</th>
      <th>prof</th>
      </tr>
      <tr class="donnees_affichees">
      <td> <?php
      $sql = "";
      $result = mysql_query($sql);
      if (mysql_num_rows($result) == 0) {
      echo '<input type="text" value="/">';
      exit;
      }

      while ($row = mysql_fetch_assoc($result)) {
      foreach ($row as $column => $value) {
      echo'<input type="text" name="'.$column.'" value="'.$value.'">';
      }
      }
      mysql_free_result($result);
      ?>
      </td>
      <td><?php
      $sql = "";
      $result = mysql_query($sql);
      if (mysql_num_rows($result) == 0) {
      echo '<input type="text" value="/">';
      exit;
      }

      while ($row = mysql_fetch_assoc($result)) {
      foreach ($row as $column => $value) {
      echo'<input type="text" name="'.$column.'" value="'.$value.'">';
      }
      }
      mysql_free_result($result);
      ?>

      <!-- même chose pour la troisième colonne-->
      </tr>
      </table>
      0