2012-02-27 6 views
0

私はここに見えた: Array into a table with 5 cells in each rowPHPテーブル:各行の表示3つのセル

をしかし、私は自分のコードを適応させることはできません。..

私はテーブルでは、PHPの配列結果を表示する必要があります。 テーブルには、各行に3つのセルが必要です。

私は、すべての3行目、と私はテーブルが3

の倍数でないレコードの数が含まれているかに出力する最後のケースでは知らないどのように出力を知りませんここに私のコードです:

echo "<table>"; 


$num=mysql_numrows($result1); 
$i=0; 
while ($i < $num) 

{ 


$aaa=mysql_result ($result1,$i,"aaa"); 
$bbb=mysql_result ($result1,$i,"bbb"); 

echo " 

<td>$aaa $bbb</td> "; 

$i++; 

} 



echo "</table>"; 
+0

「​​...」にはいくつのデータベース行がありますか? – hakre

答えて

4

3番目の要素を確認するには、%演算子を使用します。例えば行とを提供し、それ自身のiteratorにそれをラップすることにより、あなたは簡単に物事が構成可能にすることができ

enter image description here

if($i%3 == 0) { 
    // this is the third element, start a new tr here 
} 
+1

最後に、 '$ empty_cells = $ i%3'のようなことを行い、whileループを使って$ empty_cells以上のtdsを描画します。リテラル "3"を変数に置き換えて、行ごとに異なる数の列が必要な他のプロジェクトにこのコードを簡単にコピーして貼り付けることをお勧めします。 – TecBrat

0

これは

echo "<table><tr>"; 
$num=mysql_numrows($result1); 
$i=0; 

while ($i < $num) 
{ 
    $aaa=mysql_result ($result1,$i,"aaa"); 
    $bbb=mysql_result ($result1,$i,"bbb"); 
    if($i %3 ==0) 
    { 
    echo"</tr><tr><td> $aaa $bbb </td>"; 
    } 
    else 
    { 
    echo"<td> $aaa $bbb </td>"; 
    } 
    $i++; 
} 
echo "</tr></table>"; 
1

このような何かを達成しようとします列:

/** 
* function to fetch one row from database 
*/ 
function fetch_row($resultSet = NULL) { 
    static $result; 
    static $i = 0; 
    if ($resultSet) { 
     $result = $resultSet; 
     return; 
    } 
    return mysql_fetch_assoc($result); 
} 

fetch_row($result1); // initialize fetch function 

$it = new FetchIterator('fetch_row'); 

$table = new TableIterator($it, 5); 

if ($table->valid()) : ?> 

<table border="1"> 

    <?php foreach ($table as $row => $columns) : ?> 

     <tr class="<?php echo $row % 2 ? 'odd' : 'even'; ?>"> 

      <?php foreach ($columns as $index => $column) : ?> 

      <td> 
       <?php if ($column) echo $column['aaa'], ' ', $column['bbb']; ?> 
      </td> 

      <?php endforeach; ?> 

     </tr> 

    <?php endforeach; ?> 

</table> 

<?php endif; 

Demoもあり、Some PHP Iterator Funも参照してください。

関連する問題