嵌套表中的表

时间:2017-02-06 19:16:36

标签: php html nested html-table

我有一个带有while循环的嵌套表,我想在同一行中再添加一个嵌套表:

nested table

现在我想再添加一个嵌套表,因为每个cd包含多个数据,如下所示:

Double nested table

我的代码如下

<?php
if(isset($_POST['viewcd'])){
$queryw = "select * from lib_cd where id=".$_POST['idd'];
$resultw = $mysqli->query($queryw);
?>
<div>
<table border="1">
  <thead>
    <tr ><th >Select</th>
         <th>Well_Number</th>
         <th>Well_Name</th>
         <th>CD No:</th>
         <th >Logs</th>
     </tr>
   </thead>
  <?php
  while($rowcd = $resultw->fetch_assoc()){
  ?>
        <tr>
        <td><?php echo $rowcd['id'] ?> </td>
        <td><?php echo $rowcd['well_no'] ?></td>
        <td><?php echo $rowcd['well_name'] ?></td>
        <td>
            <table border="1" width="100%">
   <?php
   $querycd = "select * from cd where pidd=".$rowcd['id'];
   $resultcd = $mysqli->query($querycd);
   while($rowcd = $resultcd->fetch_assoc()){
   ?>
                <tr>
                    <td ><?php echo $rowcd['cd_no'] ?></td>
   /* I want to add one more nested table here*/
                </tr>
  <?php
   }
  ?>
            </table>
        </td>
    </tr>
 <?php
  }
  }
  ?>
 </table>
</div>

在我的第二次循环之后我尝试了这样的事情

    while($rowcd = $resultcd->fetch_assoc()){
     ?>
                <tr>
                    <td ><?php echo $rowcd['cd_no'] ?></td>
                <td>
                  <table>
      <?php
   $queryl = "select * from lib_cd_logs where pid=".$rowcd['cd_no'];
   $resultl = $mysqli->query($queryl);
   while($rowl = $resultl->fetch_assoc()){
   ?>
                    <tr>
                      <td><?php echo $rowl['logs'] ?></td>
                    </tr>
   <?php
   }
  ?>
                </tr>
  <?php
   }
  ?>
            </table>
        </td>
    </tr>
 <?php
  }
  }
  ?>
 </table>
</div>

但结果搞砸了。我很困惑,我想结束我的while循环,我想。

enter image description here

2 个答案:

答案 0 :(得分:0)

我希望这是您根据上面显示的数据表所表达的意思

<div>
<table border="1">
  <thead>
    <tr ><th >Select</th>
         <th>Well_Number</th>
         <th>Well_Name</th>
         <th>CD No:</th>
         <th >Logs</th>
     </tr>
   </thead>

    <tr>
        <td>id</td>
        <td>well</td>
        <td>name</td>
        <td>
            <table border="1" width="100%">
                <tr>
                    <td>1</td>
                </tr>
                <tr>
                    <td>2</td>
                </tr>
            </table>
        </td>

        <td>
            <table border="1" width="100%">
                <tr>
                    <td>Log1</td>
                </tr>
                <tr>
                    <td>Log2</td>
                </tr>
            </table>
        </td>

    </tr>

 </table>
</div>

答案 1 :(得分:0)

最后我按照自己的意愿得到了,我正在分享以下代码

<?php

if(isset($_POST['viewcd'])){
$queryw = "select * from lib_cd where id=".$_POST['idd'];
$resultw = $mysqli->query($queryw);
?>

<div class="container">
<table border="1" align="center" border-collapse="collapse">
    <thead>
        <tr >
            <th >Select</th>
            <th>Well_Number</th>
            <th>Well_Name</th>
            <th width="100">CD No:</th>
            <th width="150">Logs</th>
            <th width="100">Bottom Depth</th>
            <th width="100">Top Depth</th>
            <th width="100">Date of Log</th>
        </tr>
    </thead>
<?php
while($rowcd = $resultw->fetch_assoc()){
?>
    <tr>
        <td><?php echo $rowcd['id'] ?> </td>
        <td align="center"><?php echo $rowcd['well_no'] ?></td>
        <td align="center"><?php echo $rowcd['well_name'] ?></td>
        <td colspan="5">
            <table rules="all">
                <tr>
<?php
$querycd = "select * from cd where pidd=".$rowcd['id'];
$resultcd = $mysqli->query($querycd);
while($rowcd = $resultcd->fetch_assoc()){
?>
                    <td width="100" align="center"><?php echo $rowcd['cd_no'] ?></td>
                    <td colspan="4">
                        <table rules="all">
                            <tr>
<?php
$queryl = "select * from lib_cd_logs where pid=".$rowcd['cd_no'];
$resultl = $mysqli->query($queryl);
while($rowl = $resultl->fetch_assoc()){
?>
                                <td width="155"><?php echo $rowl['logs'] ?></td>
                                <td width="105" align="center"><?php echo $rowl['bottom'] ?></td>
                                <td width="100" align="center"><?php echo $rowl['top'] ?></td>
                                <td width="100" align="right"><?php echo $rowl['date'] ?></td>
                            </tr>
<?php
}
?>
                        </table>
                    </td>
                </tr>
<?php
}
?>
            </table>
        </td>
<?php
}
}
?>
    </tr>
</table>

Table inside a Nested table with while loop