Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 嵌套while循环问题,第二个循环只循环一次并停止_Php_Sql_While Loop_Group By - Fatal编程技术网

Php 嵌套while循环问题,第二个循环只循环一次并停止

Php 嵌套while循环问题,第二个循环只循环一次并停止,php,sql,while-loop,group-by,Php,Sql,While Loop,Group By,我有编码问题,我无法解决自己,所以需要您的帮助 我有两个查询从同一个表中获取数据: $rs\u main\u model使用分组方式获取所有唯一的模型 $rs_variant获取所有模型及其各自的选项,即表中的所有列 我要做的是运行while循环以列出所有唯一的模型-$rs\u main\u model,然后在同一个div中运行第二个循环以列出$rs\u variant中的所有匹配模型: <?php while (!$rs_main_model->EOF) { ?>

我有编码问题,我无法解决自己,所以需要您的帮助

我有两个查询从同一个表中获取数据:

$rs\u main\u model
使用分组方式获取所有唯一的模型

$rs_variant
获取所有模型及其各自的选项,即表中的所有列

我要做的是运行while循环以列出所有唯一的模型-
$rs\u main\u model
,然后在同一个
div
中运行第二个循环以列出
$rs\u 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(); } ?>
我应该对
进行哪些更改,而
循环才能使其正常工作?

谢谢大家!

您应该使用$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(); } ?>


请提供为
$rs\u variant
填充值的代码。在这里,将其粘贴到注释中以避免描述太长:
$sql\u variant=“选择*来自tbl\u目录,其中model\u body=”。$rs\u main\u model->fields['model\u body']。“$rs\u variant=$db->Execute($sql\u variant)如上所述,最明显的原因是
$rs_variant->EOF
为真。
<?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(); } ?>