2012-11-25 76 views
-1

我正在做一些基本的PHP,我從mysql獲取產品並在表格中顯示每個產品的相應詳細信息。PHP中的HTML表格網格

目前他們是一個相互

Product1 Name 
Product1 Price 
Product1 Description 

Product2 Name 
Product2 Price 
Product2 Description 

現在我想在3列的網格,以顯示他們腳下。 這意味着並排顯示3個產品,然後第4個產品顯示在第1個產品下面等等。

$displayAllProducts.= 
     " 
      <tr><td>Product Name : </td><td>$productName</td></tr> 
      <tr><td>Product Price : </td><td>$productPrice</td></tr> 
      <tr><td>Product Qty : </td><td>$productQty</td></tr> 
      <tr><td colspan =\"2\"><img src=\"$imagePath\" width = \"100\" height = \"100\"></td><td></td></tr> 
      <tr><td colspan =\"2\"><a href=\"singleProduct.php?pid=$productID&uid=$uid\">View Product<br/><br/><br/></td><td></td></tr> 
     "; 



<table> 
<?php 
    echo $displayAllProducts; 
?> 
</table> 
+1

您的文章不會以問號結束。你的問題到底是什麼?你已經試圖做到這一點?你卡在哪裏? –

回答

2

沒有看到通過你的db行循環您的實際代碼,這裏是一個總體思路。這將使每個$displayAllProducts它自己的表,嵌套在主表<td>

$i=1; // start a general counter 
while($i<$number_of_db_rows){ 
if($i%3 = 1) { // If number is 1,4,7,etc start a new row 
$displayAllProducts.= "<tr>"; 
} 
$displayAllProducts.= 
    " 
     <td>  // put each db row inside a cell 
     <table> // create a bounding table 
     <tr><td>Product Name : </td><td>$productName</td></tr> 
     <tr><td>Product Price : </td><td>$productPrice</td></tr> 
     <tr><td>Product Qty : </td><td>$productQty</td></tr> 
     <tr><td colspan =\"2\"><img src=\"$imagePath\" width = \"100\" height = \"100\"></td><td></td></tr> 
     <tr><td colspan =\"2\"><a href=\"singleProduct.php?pid=$productID&uid=$uid\">View Product<br/><br/><br/></td><td></td></tr> 
     </table> 
     </td> 
    "; 
if($i%3 = 0) { // If number is 3,6,9,etc close the row 
$displayAllProducts.= "</tr>"; 
} 
$i++ // increase the counter to start again 
} // ends the loop 


<table> 
<?php 
echo $displayAllProducts; 
?> 
</table> 
+0

另外,剛注意到你原來的表代碼在每行'​​'單元中不一致。前3名有2'​​',但最後2名有'colspan = \'2 \''現在有3'​​'s – Sean