2014-10-22 44 views
0

這是我的代碼(可怕的):數據(無法弄清楚如何做到佈局)

<?php 

include 'connect/con.php'; 

$result = mysqli_query($con,"SELECT id, vidTitle FROM newsvid"); 
$result1 = mysqli_query($con,"SELECT imgCover, vidSD FROM newsvid"); 
$result2 = mysqli_query($con,"SELECT published FROM newsvid"); 




echo "<table width=\"600\" border=\"1\"><tbody>"; 
while($row = mysqli_fetch_array($result)) { 
    echo "<tr>"; 
    echo '<td width=\"10%\"><a href="details.php?id='.$row['id'].'">'.$row['id'].'</a></td>'; 
    echo "<td width=\"90%\">" . $row['vidTitle'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</tbody></table>"; 


echo "<table width=\"600\" border=\"1\"><tbody>"; 
while($row = mysqli_fetch_array($result1)) { 
    echo "<tr>"; 
    echo "<td width=\"40%\">" . $row['imgCover'] . "</td>"; 
    echo "<td width=\"60%\">" . $row['vidSD'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</tbody></table>"; 




echo "<table width=\"600\" border=\"1\"><tbody>"; 
while($row = mysqli_fetch_array($result2)) { 
    echo "<tr>"; 
    echo "<td >" . $row['published'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</tbody></table>"; 



mysqli_close($con); 
?> 



</body> 
</html> 

的問題是如何顯示從數據庫中的數據在此佈局:

-------------------------------- 
-id----------vidTitle----------- 
-------------------------------- 
-imgCover------vidSD------------ 
-------------------------------- 
----------published------------- 

所以每次我會添加更多的數據,就像我的另一個塊顯示前將現有的一個下積少成多。 ................................................. .......................................

回答

1

有沒有必要寫3個查詢。你可以只用一個選擇來做到這一點,然後把所有的回聲放入while。這樣,你寫的,它會先運行所有的ID和標題,然後它會把一張桌子放在桌子後面,封面和vidSD

試圖使一個單一的查詢:

SELECT id, vidTitle, imgCover, vidSD, published FROM newsvid

這樣,你將有,每一行從數據庫中返回,所有關於同一行的信息。現在

,運行一段時間是一樣的,你在做什麼,只是調整一些HTML:

echo "<table width='600' border='1'><tbody>"; 
while($row = mysqli_fetch_array($result)) { 
    echo "<tr>"; 
    echo '<td width=\"10%\"><a href="details.php?id='.$row['id'].'">'.$row['id'].'</a></td>'; 
    echo "<td width=\"90%\">" . $row['vidTitle'] . "</td>"; 
    echo "</tr>"; 
    echo "<tr>"; 
    echo "<td width=\"40%\">" . $row['imgCover'] . "</td>"; 
    echo "<td width=\"60%\">" . $row['vidSD'] . "</td>"; 
    echo "</tr>"; 
    echo "<tr>"; 
    echo "<td colspan='2'>" . $row['published'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</tbody></table>"; 

您可能想訂購了。添加ORDER BY id DESC,會這樣做。

+0

EVERYTHING看起來很酷但是在表格寬度10%和另一個TR中td 40%不起作用的主要問題((( – Denis 2014-10-22 01:16:11

+0

)所有表格看起來都像50%50%,如果更改爲10 %由90%沒有改變,他們仍然是相同的.. – Denis 2014-10-22 01:22:56