php - 使用 MySQL 表值作为标题

标签 php header while-loop mysql

我有一个 MySQL 表,其中的值包含体育比赛的评委。布局示例:

Table name = competition

panel   | name | role
Grade 1 | Bob  | Judge 1
Grade 1 | Dave | Judge 2
Grade 2 | Jo   | Judge 1
Grade 1 | Kat  | Judge 3

我想用以下格式在 HTML 中显示:

-- Grade 1 --
Judge 1 | Bob
Judge 2 | Dave
Judge 3 | Kat
-- Grade 2 --
Judge 1 | Jo

面板名称是可变的,并且在比赛之间会发生变化,因此不能在代码中使用它们。我的尝试(无效)是:

<?php $panels_distinct = mysql_query("SELECT DISTINCT panel FROM competition"); ?>

   <table>

<?php while $panel_names = mysql_fetch_array($panels_distinct) { ?>

   <tr>
      <td colspan="2"><?php echo $panel_names['panel'] ; ?></td>
   </tr>

   <?php $judges = mysql_query("SELECT * FROM competition WHERE panel = $panel_names['panel'] ") ; 
   while $judges_info=mysql_fetch_array($judges) { ?>

      <tr>
         <td><?php echo $judges_info['role'] ; ?></td>
         <td><?php echo $judges_info['name'] ; ?></td>
      </tr>

   <?php } // end while $judges_info ?>

<?php } // end while $panel_names ?>

   </table>

目前仅输出面板名称。感谢收到任何帮助或建议!

最佳答案

从 sql 中删除 DISTINCT。此外,您还需要在表名之后使用 ORDER BY grade

要获得您显示的格式,您需要检测循环中成绩何时发生变化,然后打印标题行。

关于php - 使用 MySQL 表值作为标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15448167/

相关文章:

php - HTML 按钮在 Wordpress 中无法在移动设备上运行

javascript - Laravel 分页将问题与设计联系起来

ios - 在 UICollectionViewCell iOS Swift 4 中注册 header 时出错

java - 如何使用 equals 方法将对象添加到数组列表中以排除相似的对象?

java - 一边跳跃一边移动

python - While 循环太早中断了。

javascript - json从php到jquery相同的功能

php - "Automatic cleaning is not available/necessary with this backend"是什么意思? (对于内存缓存)

html - 我的页眉 Div 不工作

头文件 LNK2019 中的 C++ API 实现