-1

現在、いくつかの基本的な PHP を実行しており、mysql から製品を取得し、各製品を対応する詳細と共に表に表示しています。

現在、それらは互いに下にある

Product1 Name
Product1 Price
Product1 Description

Product2 Name
Product2 Price
Product2 Description

今、それらを 3 列のグリッドに表示したいと考えています。これは、3 つの製品を並べて表示することを意味し、4 番目の製品は最初の製品の下に表示されます。

$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>
4

1 に答える 1

1

行をループする実際のコードを見ず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>
于 2012-11-25T17:03:01.840 に答える