-4

私はデータベースから取得しているデータベースに88行あります.32、30、26のように3つの列に表示したいのですが、これを行う方法を教えてください. 32,30,30 は、各列に必要な行数です。

4

2 に答える 2

1

結果の数を数え、mysql_num_rows()3で割ります。phpループで、カウンターを追加します。除算の結果になったら、次の列に移動します。このようなもの:

$third = mysql_num_rows($sqlresult)/3;
$counter=1;
echo "<div>";
while($r = mysql_fetch_array($sqlresult)){
    if($counter++ > $third){
        $counter = 1;
        echo "</div><div>";
    }
    echo $r[0]."<br />";
}
echo "</div>";

テーブルを使用している場合は、divをtdsとtrsに変更するか、質問で行ったようにマークアップを削除してコンマを使用することもできます。

于 2012-09-26T11:31:04.110 に答える
1

偶数列が必要な場合は、簡単に実行できます(32、30、26に到達したことを本当に理解できません)が、次のようなことができます:

$counter=1;
echo "<table><tr>"
while($row=someFetchFromDatabase($result))
{
    echo "<td>$row['col1']</td>";
    $counter++;
    if($counter%3==0)
    {
        echo "</tr><tr>";
    }
}
echo "</tr></table>";

これにより、カウンターがインクリメントされ、データセットの最後まで 3 行が表示されますが、ここでソリューションに追加して詳細をクリーンアップする必要があります。

于 2012-09-26T11:30:15.060 に答える