0
echo "<table class='listing'>"; 
$i=0;
for ($i=1;$i<=$num;$i++) {
       while( $row = $rs->fetch_assoc() ) {
        echo "<tr>";
        echo "<td><a href='?p=view_org&oid={$row['org_id']}'>{$row['org_name']}<br /><img src='{$row['org_logo']}' width='120px' /></a></td>";
        echo "</tr>";  
    }
echo "</table>";  

结果是用一个 tr 和 td 产生的,所以图像显示为一个列表......谁能给出任何想法来处理这个循环,使其只有 4 个 td 项,然后用另外 4 个项目开始一个新的 tr?

4

3 回答 3

5
echo "<table class='listing'><tr>";
$i = 0;
while( $row = $rs->fetch_assoc() ) {
    echo "<td><a href='?p=view_org&oid={$row['org_id']}'>{$row['org_name']}<br /><img src='{$row['org_logo']}' width='120px' /></a></td>";
    $i++;
    if($i%4==0){
        echo "</tr><tr>";
    }
}
echo "</tr></table>";  
于 2012-09-21T04:34:36.693 回答
2

像这样试试

echo "<table class='listing'>"; 
$i=0;
echo "<tr>";   
     while( $row = $rs->fetch_assoc() ) {         
     echo "<td><a href='?p=view_org&oid={$row['org_id']}'>{$row['org_name']}<br /><img src='{$row['org_logo']}' width='120px' /></a></td>";
     $i++; 
     if($i%4==0)
         echo "</tr><tr>";               
echo "</table>";  
于 2012-09-21T04:35:20.607 回答
0

用户数组函数:array_chunk();

$input_array = array('a', 'b', 'c', 'd', 'e');
$t = array_chunk($input_array, 4);

It will give output like this : 

Array
(
[0] => Array
    (
        [0] => a
        [1] => b
        [2] => c
        [3] => d        

    )

[1] => Array
    (
        [0] => e
    )

)

您可以使用 for / foreach 循环:

<table>

for($i ; $< count($t); $i++)
{
    <tr>

         for($j = 0 ; $j < 4 ; $j++) 
         {
             <td>echo $t[$i][$j];</td>
         }

    </tr>
}
</table>
于 2012-09-21T04:34:33.173 回答