使用循环以特定方式使用 sql 数据填充表

我想以特定方式将以下数据库表中的数据放入 html 表中。

http://img2.mukewang.com/61ee034f0001c5d903890173.jpg

下面是我的php代码:


echo "<table style='border:2px solid black;width:100%;'>";


foreach ($results as $key => $value) {

  for ($i = 1; $i < 4; $i++) { // 3 + 1 = 4 (itération sur la valeur de $value['ligne'])

    if ($i == $value['ligne']) {

      echo "<tr>";

      for ($j = 1; $j < 4; $j++) { // itération sur la valeur de $value['colonne']

        //if ($j == $value['colonne'] ) {

        echo "<td style='padding:1em;border:1px solid black;'>".$value['contenu']."</td>";

        //}

      }

      echo "</tr>";

    }   

  }

}

echo "</table>";

这是我的输出:

http://img3.mukewang.com/61ee035d0001de8012690324.jpg

我想要实现的是仅在表的第 1 列中有“colonne1”;"colonne2" 只出现在第 2 列,以此类推。同理,"Ligne1" 应该只出现在第 1 行;第 2 行中的“Ligne2”,这是我能够做到的。任何的想法?提前致谢。


梦里花落0921
浏览 151回答 1
1回答

肥皂起泡泡

您可以使用二维数组来实现您正在寻找的对象。首先,根据数据库结果构建数据结构。// assuming you’ve retrieved table into&nbsp; $results$table =array();foreach($results as $v) {&nbsp; $row = $v[‘ligne’];&nbsp; $col = $v[‘colonne’];&nbsp; $content = $v[‘contenue’];&nbsp; $table[$row][$col] = $content;}// build html table?>然后你可以在视图中打印出来:<table>&nbsp; &nbsp; <?php foreach($table as $row_array): ?>&nbsp; &nbsp; <tr>&nbsp; &nbsp; &nbsp; &nbsp; <?php foreach($row_array&nbsp; as $col): ?>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <td><?= $col ?></td>&nbsp; &nbsp; &nbsp; &nbsp; <?php endforeach; ?>&nbsp; &nbsp; </tr>&nbsp; &nbsp; <?php endforeach; ?></table>
打开App,查看更多内容
随时随地看视频慕课网APP