表数据未安排

时间:2019-06-02 10:31:16

标签: php html mysql html-table pivot

由于我是一个初学者,所以我想问一下如何使用PHP对同一行运行多个查询,以便在html表中具有多个数据。我已经尝试了许多尝试,但是没有用,我正在使用MYSQL作为后端。我知道我还没有为第一行和第二列编写代码,即在wicket keeper上编写第二个for layer in model.layers: layer.trainable = False ,但事实是我希望所有舍入数据都进入wicket keeper部分的第二个<td>中。 。运行此代码时,它为wicket keeper提供了很好的输出,但是对于所有rounder列,数据在wicket keeper数据结束之后开始。我知道为什么会发生此问题,但请问该如何解决?

此处输入代码

<td>

click here to see output

1 个答案:

答案 0 :(得分:1)

这是生成显示的行的好方法。

首先,使用以下查询:

      SELECT name, role FROM teams ORDER BY role DESC;

它会按照您想要的顺序生成行,首先是检票员。

然后,使用此php代码生成您的显示。

<?php
  $sql="SELECT name, role FROM teams ORDER BY role DESC";
  $result=mysqli_query($conn,$sql) or die(mysqli_error());
  while($row=mysqli_fetch_assoc($result)){ 
    $role = $row["role"];
    $name = $row["name"];
    $wicketkeeper = $role == "WicketKeeper" ? $name : "";
    $allrounder = $role == "AllRounder" ? $name : "";

    ?>
    <tr>
      <td><?php echo $wicketkeeper ?></td>
      <td><?php echo $allrounder ?></td>
      <td></td>
      <td></td>
    </tr>
<?php } ?>

这将呈现查询结果集中的行,并根据其角色将名称放置在列中。

在一般情况下,此任务称为透视表格。

专业提示1 尝试避免在查询中使用SELECT *。而是提供所需列的名称。这使您的代码更易于陌生人阅读,并且可能使查询运行得更快。

专业提示2 ,只要您发现自己重复使用同一查询(仅因WHERE子句而有所不同),就尝试使用一个查询。这可以使您的应用程序运行更快。