ホームページ > バックエンド開発 > PHPチュートリアル > 2 つの DD が同じループ コードを書いた場合、そのうちの 1 つは実行されませんか?

2 つの DD が同じループ コードを書いた場合、そのうちの 1 つは実行されませんか?

WBOY
リリース: 2016-06-23 14:38:53
オリジナル
999 人が閲覧しました

2 つの DD が同じループ コードを書き込み、1 つの DD が空白として表示されます

$ztzs=$dbc->prepare("select * from naszt where 1=1 and zttype='威联通'");$ztzs->execute(); <dd>	      <?php while($row=$ztzs->fetch()){?>	      <div class="ztzs">                <a href="ztselect.php?id=<?php echo $row["id"]?>" target="_blank"> 				 <img src="ztImg/<?php echo $row["headimg"] ?>">				   </a>				      <p><?php echo $row['ztname'] ?></p>					    </div>           <?php } ?>	</dd> <dd>	      <?php while($row=$ztzs->fetch()){?>	      <div class="ztzs">                <a href="ztselect.php?id=<?php echo $row["id"]?>" target="_blank"> 				 <img src="ztImg/<?php echo $row["headimg"] ?>">				   </a>				      <p><?php echo $row['ztname'] ?></p>					    </div>           <?php } ?>	</dd>
ログイン後にコピー



DD の 1 つがページにデータを表示しないとき


ディスカッションに返信する (解決策)

<?php$ztzs=$dbc->prepare("select * from naszt where 1=1 and zttype='威联通'");$ztzs->execute();?><dd>	      <?php while($row=$ztzs->fetch()){?>    <div class="ztzs">        <a href="ztselect.php?id=<?php echo $row["id"]?>" target="_blank">            <img src="ztImg/<?php echo $row["headimg"] ?>">        </a>        <p><?php echo $row['ztname'] ?></p>    </div><?php } ?></dd><dd>    <?php while($row=$ztzs->fetch()){?>        <div class="ztzs">            <a href="ztselect.php?id=<?php echo $row["id"]?>" target="_blank">                <img src="ztImg/<?php echo $row["headimg"] ?>">            </a>            <p><?php echo $row['ztname'] ?></p>        </div>    <?php } ?></dd>
ログイン後にコピー


方法これについては ?

さらに、この方法で 1=1 を植えることができるのはどこですか?

while($row=$ztzs->fetch()) の最初のラウンドの終了時点では、結果セットはすでに空になっています。 (結果セットのポインタは末尾を指します)
したがって、2 番目のラウンドでは出力はありません
結果セットのポインタを先頭にラップする必要があります。
データベースクラスがレコード位置決め機能を提供していない場合は、使用しているデータベースに応じて自分で記述してください。
たとえば、mysql_data_seek

さらに、1=1 はこの方法で植えることができます...

while($row=$ztzs->fetch()) の最初のラウンドの終わりに、結果セットはすでに空です (結果セット ポインターは最後を指します)
したがって、2 番目のラウンドでは出力はありません
結果セット ポインターを先頭にラップする必要があります。
データベースクラスがレコード位置決め機能を提供していない場合は、使用しているデータベースに応じて自分で記述してください。
たとえば、mysql_data_seek soga ありがとうございます

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート