希望使用php在各自的父测试下显示子测试

希望使用php在各自的父测试下显示子测试,php,mysql,nested-loops,recordset,Php,Mysql,Nested Loops,Recordset,我是一个php新手,想知道使用php和mysql在各自的父测试下显示子测试的循环代码。请看图片。我想以以下方式/布局显示测试,所有测试都来自数据库表 下面是数据库结构和数据库中少数记录的屏幕截图。 很少有测试记录 注:我只进行了第1级的子测试。因此,我的要求仅适用于第一个子级别 如果sub-one能帮助我从数据库中获取代码和记录并显示出来,我将不胜感激。我对此完全感到困惑和压力。任何小小的帮助都会给我带来奇迹 提前谢谢 $query = mysql_query("SELECT * FROM

我是一个php新手,想知道使用php和mysql在各自的父测试下显示子测试的循环代码。请看图片。我想以以下方式/布局显示测试,所有测试都来自数据库表

下面是数据库结构和数据库中少数记录的屏幕截图。

很少有测试记录

注:我只进行了第1级的子测试。因此,我的要求仅适用于第一个子级别

如果sub-one能帮助我从数据库中获取代码和记录并显示出来,我将不胜感激。我对此完全感到困惑和压力。任何小小的帮助都会给我带来奇迹

提前谢谢

$query = mysql_query("SELECT * FROM `table` WHERE `parent_id` = 0");

while($result = mysql_fetch_array($query)) {
   echo $result[test_name];
   $child_query = mysql_query("SELECT * FROM `table` WHERE `parent_id` = $result[id]");

   while($child = mysql_fetch_array($child_query)) {
       echo $child[test_name];
   }
}
如果你想要一个查询,它可以是这样的

$query = mysql_query("SELECT * FROM `table`");
$results = array();

while($result = mysql_fetch_array($query)) {
   $results[] = $result;
}

$tmps = $results;

foreach($results as $result) {
    echo $result[test_name];
    foreach($tmps as $tmp) {
       if($tmp[parent_id] == $result[id])
            echo $tmp[test_name];
    }
}

这可能会有一些错误,但我认为应该是这样的方法

谢谢你的回答,但是你不能帮助我使用一个mysql查询并使用数组处理子查询部分。我认为这样可以节省数据库加载时间,页面加载时间也会更快。谢谢你的及时帮助。我很感激。