[英]Nested while loop issue, second one loops only once and stops
我的編碼問題無法解決,因此需要您的幫助。
我有兩個查詢從同一張表中獲取數據:
$rs_main_model
使用GROUP BY獲取所有唯一模型
$rs_variant
獲取所有具有各自選項的模型,即表中的所有列。
我正在做的是運行一個while循環以列出所有唯一模型- $rs_main_model
,然后在同一div
運行第二個循環以列出$rs_variant
中所有匹配的模型:
<?php while (!$rs_main_model->EOF) { ?>
<div>
<div>
<h2<?php echo $rs_main_model->fields['model']; ?></h2>
</div>
<div>
<?php while (!$rs_variant->EOF) { ?>
<?php echo $rs_variant->fields['variant']; ?>
<?php $rs_variant->MoveNext(); } ?>
</div>
</div>
<?php $rs_main_model->MoveNext(); } ?>
以下是實際和所需輸出的示例:
The output should look something like this: | However what I end up with is this:
Model A Model A - Variant1 | Model A Model A - Variant1
Model A - Variant2 | Model A - Variant2
Model A - Variant3 | Model A - Variant3
Model B Model B - Variant1 | Model B
Model C Model C - Variant1 | Model C
Model C - Variant2 |
為了使這項工作有效,我應該對while
循環進行哪些更改? 謝謝!
您應該使用$ rs_main_model-> fields ['model']作為條件,在外循環內的每次迭代中更新$ rs_variant結果。 嘗試以下
<?php while (!$rs_main_model->EOF) { ?>
<div>
<div>
<h2<?php echo $rs_main_model->fields['model']; ?></h2>
<?php $sql_variant = "SELECT * FROM tbl_catalog WHERE model_body = '".$rs_main_model->fields['model_body']."'"; $rs_variant = $db -> Execute($sql_variant); ?>
</div>
<div>
<?php while (!$rs_variant->EOF) { ?>
<?php echo $rs_variant->fields['variant']; ?>
<?php $rs_variant->MoveNext(); } ?>
</div>
</div>
<?php $rs_main_model->MoveNext(); } ?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.