2011-11-17 30 views
-1

に私はDreamweaverので反復領域を作ったし、結果がこれですながら/ DO上の間隔を設定する:5から5

<div> 
    <?php do { ?> 
    <div class="slide"> 
     <img src="<?php echo $row_Recordset1['imagemUrl']; ?>" /> 
     <h2><a href="projecto.php?projecto=<?php echo $row_Recordset1['idProj'];"><?php echo $row_Recordset1['titleProj']; ?></a></h2> 
    </div> 
    <?php while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?> 
</div> 

ここで問題ありません、それが正常に動作します。

事は、私は、ページごとにのみ5スライドを使用するには、このような何かをしようとしているある

:それは明らかに働いていない

<div> 
<div class="page"> 
    <?php do { ?>  
    <div class="slide"> 
     <img src="<?php echo $row_Recordset1['imagemUrl']; ?>" /> 
     <h2><a href="projecto.php?projecto=<?php echo $row_Recordset1['idProj'];"><?php echo $row_Recordset1['titleProj']; ?></a></h2> 
    </div> 
    <?php 
    $i = 0; 
    $r = $i % 5; 
    $i++; 
    if ($r == 0) { 
    ?> 
    </div> <!-- closes div.page --> 
    <div class="page"> <!-- adds a new div.page --> 
    <? } ?> 
    <?php while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?> 
</div> 

、うまくいけば、あなたは私が到達しようとしているか見ます。

ありがとうございます!

UPDATE:

私が得る結果は次のとおりです。

<div class="page"> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
</div> 

私はそれがしたいと思います:

<div class="page"> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
</div> 
<div class="page"> 
<div class="slide">...</div> 
<div class="slide">...</div> 
<div class="slide">...</div> 
</div> 
+0

「作業していない」とはどういう意味ですか?それは最初の繰り返しでそのdivを閉じますか? – mishu

+0

'forループ'を使うのはどうですか? – Zhianc

+0

@mishu更新しました。あなたの質問に答えることを願っています。 – danielcorreia

答えて

1

あなたはすべての繰り返しで0に$ Iを設定しています。 do-whileループの前に$i = 0を置きます。

また、$r = $i % 5;の前に$i++を置き、必要な結果を得ることもできます。

EDIT:あなたはまた、(タイプミス?)あなたのwhile文の前に閉じ括弧が欠落しているしたがって

、完全なコード:

<div> 
    <div class="page"> 
    <?php 
    $i = 0; 
    do { ?>  
     <div class="slide"> 
      <img src="<?php echo $row_Recordset1['imagemUrl']; ?>" /> 
      <h2><a href="projecto.php?projecto=<?php echo $row_Recordset1['idProj'];?>"><?php echo $row_Recordset1['titleProj']; ?></a></h2> 
     </div> 
    <?php 
     $i++; 
     $r = $i % 5; 
     if ($r == 0) { 
    ?> 
     </div> <!-- closes div.page --> 
     <div class="page"> <!-- adds a new div.page --> 
    <?php 
     } 
    } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?> 
</div> 
0

このような何かは5回ループスルーは、新しいを追加します<div>content</div>を変数$htmlに設定します。変数をHTML本体にエコーすることができます。

$html = ""; 

for ($i=0;$i<5;$i++) { 
    $html .= "<div class=\"page\">". $content[$i] . "</div>\n"; 
} 

追加:

<?PHP 

while ($row_Recordset = mysql_fetch_assoc($Recordset1)) { 

    $html .= "<div class='page'>\n"; 

    for ($i=0;$i<5;$i++) { 
     $html .= "<div class='slide'>". $row_Recordset[$i]['column'] . "</div>\n"; 
    } 

    $html .= "</div>\n"; 
} 
?> 

このコードは、レコードセットをループは、各反復で$html移入します。試してみてくださいecho $htmlと出力は、あなたが望むように構造化されます。

0

あなたが与えた作品は有効なPHPコードではありません。ここ ライン:

<h2><a href="projecto.php?projecto=<?php echo $row_Recordset1['idProj'];"><?php echo $row_Recordset1['titleProj']; ?></a></h2> 

を開く次の前にそれを閉じずにPHPのタグを開きます。..

<? } ?> 

をあなたがブロック(そう別}ながら/ IFおよびDOの両方を閉じる必要がありますので、最初のステップはまた、あなたがここに、ブロックを閉じる逃し

<h2><a href="projecto.php?projecto=<?php echo $row_Recordset1['idProj'];?>"><?php echo $row_Recordset1['titleProj']; ?></a></h2> 

にその行を変更することであろう)

別の問題は、0 iはあなたが$変更ステップごとに、そのたびに$ rは0も

になりますので、結論であるという事実である:あなたがより多くを持っているようにステップバイあなたの問題の一歩を踏み出します1つ以上

+0

それらの問題は間違いを入力していた、ごめんなさい。 $ i = 0は間違った場所にありました、ありがとう! – danielcorreia

0
<div> 
<div class="page"> 
<?php for ($i = 0; $row_Recordset1 = mysql_fetch_assoc($Recordset1); $i++) { ?> 
    <div class="slide"> 
     <img src="<?php echo $row_Recordset1['imagemUrl']; ?>" /> 
     <h2><a href="projecto.php?projecto=<?php echo $row_Recordset1['idProj']; ?>"><?php echo $row_Recordset1['titleProj']; ?></a></h2> 
    </div> 
    <?php if ($i % 5 == 0 && $i) { ?> 
    </div> <!-- closes div.page --> 
    <div class="page"> <!-- adds a new div.page --> 
    <?php } ?> 
<?php } ?> 
    </div> 
</div>