2014-04-01 74 views
0

我有這樣的代碼。Mysql以表格格式提取與PHP MYSQL的聯合

代碼:

 <?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 

我怎樣才能做到這一點? 編輯: 標題部分是一個動態負載。所以我需要的表頭也處於環

回答

2

我不知道你在哪裏卡住這樣做,但你可以在下面做,

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>"; 

華林: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

+0

哦,不。提取assoc是一個動態的值..我還需要一個動態的表頭部分。 – user3350885

+0

查看我的更新。注意:我沒有測試代碼,這只是一個想法。 – Rikesh

+0

rikesh - 請我在這裏的其他問題 http://stackoverflow.com/questions/22786306/php-mysql-associate-array-and-table – user3350885

0

嘗試這個 -

<?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>"; 
     ?> 
+0

晴天 - 我編輯了我的問題。表頭部分即,書名和Book_ID將會動態變化。所以標題部分也應該使用$ book_query加載。請幫助我 – user3350885

0

你可以做到這一點

<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> 
+0

Mohit - 標題部分是動態的。對不起,我的英語不好 ​​書名 ​​簿ID 這會動態變化。所以我不想硬編碼這個值。任何幫助 – user3350885

0

隨着Rikesh的代碼,使用array_keys()函數。這將獲取子集數組的所有密鑰。

所以你可以動態獲取密鑰。

希望這可以幫助你。

0

試試這個

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>"; 
+0

Sagar - 謝謝。請在這裏查看我的其他問題。幫幫我。 http:// stackoverflow。com/questions/22786306/php-mysql-associate-array-and-table – user3350885

0
//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;  


?> 
+0

檢查這一個它會幫助你! – user3436157