2013-03-17 46 views
0

我想:如何顯示帶有標題的表格一次,然後顯示多個數據庫字段內容,如果字段不爲空?

行情:
報價1
引用源1

報價2
引用源2

我目前得到:

行情:
報價1個
引用源1

行情:
報價2
引用源2

最終爲我的作品編號:

echo ("<table border='1'>"); 

$header_printed = false; 

while($row = mysql_fetch_array($rs)) { 
if ($row['quote']) { 
    if ($header_printed === false) { 
     echo " 

      <tr> 
       <th>Quotes:</th> 
      </tr>"; 
     $header_printed = true; 
    } 

    echo " 
     <tr> 
      <td>".$row['quote']."</td> 
      <td>".$row['quote_source']."</td> 
     </tr>"; 
} 

} 

echo ("</table>"); 
+0

通過不爲每個報價打開一個新表,但在循環之前這樣做一次,並且在每個循環步驟中只寫入一個新的TR元素? – CBroe 2013-03-17 00:40:42

回答

0

把標題出來的循環:

$header_printed = false; 

while($row = mysql_fetch_array($rs)) { 
    if ($row['quote']) { 
     if ($header_printed === false) { 
      echo " 
       <table border='1'> 
       <tr> 
        <th>Quotes:</th> 
       </tr>"; 
      $header_printed = true; 
     } 

     echo " 
      <tr> 
       <td>".$row['quote']."</td> 
       <td>".$row['quote_source']."</td> 
      </tr>"; 
    } 

} 
+0

我只想在($ row ['quote'])中有數據的時候使頭部出現一次,所以沒有數據,沒有頭文件。但是如果有數據,標題會出現一次。 – Hammy 2013-03-17 01:26:46

+0

編輯答案,以便僅當有數據要顯示時,腳本纔會打印標題。 – matt 2013-03-17 01:54:39

+0

這很好,謝謝 – Hammy 2013-03-17 05:35:22

1
echo "<table border='1'><tr><th>Quotes:</th></tr>"; 
while($row = mysql_fetch_array($rs)) { 
    if ($row['quote']) { 
     echo "<tr><td>".$row['quote']."</td><td>".$row['quote_source']."</td></tr>"; 
    } 
} 
echo "</table>"; 
+0

謝謝你的幫助!剩下的唯一問題是它仍然是回聲報價即使$ row ['quote']字段中沒有數據。對不起,我知道我的問題不清楚。 – Hammy 2013-03-17 01:16:06

相關問題