0

現在、ページにアイテムのループが表示されています。

ループを 2 回実行し (2 つの結果/項目を出力)、2 番目の結果の直後にバナーを一度挿入し、中断したところからループを続けたいと思います。

以下の図:

{ --- ループの開始 --- }

項目 1 | アイテム 2
{ ここにバナー }
アイテム 3 | 項目 4
項目 5 | 項目 6
項目 7 | 項目 8

{ --- ループの終わり --- }
<- 前 | 次へ ->

項目は while ループ内にあります。

$sql = mysql_query("SELECT id, img, description, keyword, category FROM images WHERE connect = 1 ORDER BY id DESC LIMIT $from , $perPage");

while($result = mysql_fetch_object($sql)) {
LOOP OF ITEMS HERE }

「do」/「while」メソッドしか見つけたことがありませんが、これは私が探しているものではありません。誰かが助けてくれるなら、あなたの時間と援助に感謝します.

4

2 に答える 2

2
$i=1;
while($result = mysql_fetch_object($sql)) {
    //print item
    if($i==2) { 
        //print banner
    }
    $i++;
}

2項目ごとに印刷したい場合は、yuが使用できます

if($i % 2 == 0)
于 2012-05-20T18:57:11.860 に答える
0

ループ外の最初のアイテムを印刷してからバナーを印刷し、残りのアイテムを繰り返すこともできます。

$result = mysql_fetch_object($sql)
// print item
// print banner
while($result = mysql_fetch_object($sql)) {
    // print item
}

ニールの解決策はより一般的ですが、こちらの方が簡単かもしれません。$sqlリソースには、自動的にリセットされない内部ポインターがあることに注意してください。そのため、while ループの外で一度呼び出すと、while ループは 2 番目の項目から開始されます。この場合、それはあなたが望むものです。

于 2012-05-20T19:04:27.073 に答える