【问题标题】:Mysql fetch assoc with PHP MYSQL in a table formatMysql 以表格格式获取与 PHP MYSQL 的关联
【发布时间】:2014-04-01 11:20:55
【问题描述】:

我有这样的代码。

代码:

        <?php
        $book_query = mysql_query("select * from book_master')");
        while($book_query_fetch = mysql_fetch_assoc($book_query)){
        echo "<pre>";
        print_r($book_query_fetch);  
        echo "</pre>"
        }
        ?>

输出:

        Array
        (
        [Book_Name] => Book1
        [Book_ID] => 123
        )

        Array
        (
        [Book_Name] => Book2
        [Book_ID] => 124
        )

预期输出:(在表格中)

        Book Name       Book_ID
        Book1           123
        Book2           124

我怎样才能做到这一点? 编辑: 标题部分是动态负载。所以我也需要循环使用表头

【问题讨论】:

    标签: php mysql foreach


    【解决方案1】:

    我不知道你在哪里坚持这样做,但你可以在下面做,

     echo "<table>";
     $i = 0;
     while($row = mysql_fetch_assoc($book_query))
      {
         if($i == 0){
            $columns = array_keys($row);
            echo "<th>";
            foreach($columns as $column){
                echo "<td> $column</td>";
            }
            echo "</th>";
         }
         echo'<tr>';
         echo '<td>'.$row['Book_Name'].'</td>';
         echo '<td>'.$row['Book_ID'].'</td>';
         echo '</tr>';
         $i++;
      }
      echo "</table>";
    

    Waring: Please, don't use mysql_* functions in new code。它们不再维护and are officially deprecated。看到red box?改为了解 prepared statements,并使用 PDOMySQLi - this article 将帮助您决定哪个。如果你选择 PDO,here is a good tutorial

    【讨论】:

    • 哦,不。 fetch assoc 是一个动态的值。我也需要一个动态的表头部分。
    • 查看我的更新。注意:我没有测试过代码,只是一个想法。
    • rikesh - 请在这里查看我的其他问题stackoverflow.com/questions/22786306/…
    • 会调查它,但如果您的问题由此解决,请accept回答。
    【解决方案2】:

    试试这个-

     <?php
            $book_query = mysql_query("select * from book_master')");
    echo "<table>";
    echo"<tr><td>Book Name</td><td>Book_ID</td></tr>";        
    while($book_query_fetch = mysql_fetch_assoc($book_query)){
    
    echo"<tr><td>".$book_query_fetch['Book_Name']."</td><td>".$book_query_fetch['Book_ID']."</td></tr>"; 
    
    
            }
    echo "</table>";
            ?>
    

    【讨论】:

    • sunny - 我已经编辑了我的问题。表头部分,即。 Book Name 和 Book_ID 会动态变化。所以标题部分也应该使用 $book_query 加载。请帮帮我
    【解决方案3】:

    与 Rikesh 的代码一起,使用 array_keys() 函数。这将获取子集数组的所有键。

    因此您也可以动态获取密钥。

    希望对你有所帮助。

    【讨论】:

      【解决方案4】:

      你可以这样做

      <table>
      
      <?php
              $book_query = mysql_query("select * from book_master')");
             $book_query_fetch = mysql_fetch_assoc($book_query); ?>
                <th>
                <td><?php echo $book_query_fetch['book_name']; ?></td>
               <td><?php echo $book_query_fetch['Book_ID']; ?> </td>
               </th>
           <?php    while($book_query_fetch){ ?>
           <tr>
          <td><?php echo $book_query_fetch['Book_Name']; ?></td>
          <td><?php echo $book_query_fetch['Book_ID']; ?></td>
           </tr>
      <?php } ?>
      </table>
      

      【讨论】:

      • Mohit - 标题部分是动态的。抱歉我的英语不好 书名 书名 这将动态变化。所以我不想硬编码这个值。任何帮助
      【解决方案5】:

      试试这个

       while($row = mysql_fetch_assoc($book_query))
        {
           echo'<tr><th>'.
         $columns = array_keys($row);
          foreach($columns as $column){
              echo "<td> $column</td>";
          }
           .'</th></tr><tr>';
           echo '<td>'.$row['Book_Name'].'</td>';
           echo '<td>'.$row['Book_ID'].'</td>';
           echo '</tr>';
        }
        echo "</table>";
      

      【讨论】:

      【解决方案6】:
      //try this      
        <?php
              $book_query = mysql_query("select * from book_master')");
              while($book_query_fetch = mysql_fetch_assoc($book_query)){
              echo "<pre>";
      $a="<table><tr>";
      
      foreach ($book_query_fetch as $key=>$value){
              $a="<th>".$key."</th>"
      }
      exit;
              }
      $a="</tr>"
      
      
      
             while($book_query_fetch = mysql_fetch_assoc($book_query)){
      
      $a="<tr>";
      
      foreach ($book_query_fetch as $key=>$value){
              $a="<td>".$value."</td>"
      }
      $a="</tr>";
              }
      
       $a="</table>"
      
      echo $a;       
      
      
      ?>
      

      【讨论】:

      • 看看这个对你有帮助!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 2012-04-27
      • 2013-11-18
      • 1970-01-01
      • 2015-01-27
      • 1970-01-01
      相关资源
      最近更新 更多