在两列中显示多列标题和数据

时间:2012-07-21 09:24:18

标签: php

我需要从表中选择多列信息并将其显示在另一个只有两列的表中。场景是这样的: 第一张表(多栏):

      MATH111  MATH112  MATH113 MATH114
      67          89      54      23

我想在此显示它(两列表):

       Course      Score
       MATH111      67
       MATH112      89
       MATH113      54
       MATH114      23

我在php中足够熟悉以获取并显示多列表中的信息:

     "select * from xx where id=''";
      echo "<table border='1'>
   <tr>
<th>MATH111</th>
  <th>MATH112</th>
 <th>MATH113</th>
<th>MATH114</th>
  </tr>";
while($row=(mysqli_fetch_assoc($result))
 {
echo "<tr>";
 echo "<td>" . $row['MATH111'] . "</td>";
 echo "<td>" . $row['MATH112'] . "</td>";
  echo "<td>" . $row['MATH113'] . "</td>";
 echo "<td>" . $row['MATH114'] . "</td>";
echo "</tr>";
 }    
   echo "</table>";

我想要显示的表格是:

       echo '<table><tr><th>Course</th><th>Score</th></tr>';

我需要的是帮助代码显示它,如上所述,采用以下格式:

         Course      Score
       MATH111      67
       MATH112      89
       MATH113      54
       MATH114      23

请允许我添加“课程”列的值 是基于正在选择的表。所以我不能硬编码。

2 个答案:

答案 0 :(得分:0)

将您的SQL查询重写为此类

select 'MATH111' Course, MATH111 Score from xx where id=something
union
select 'MATH112' Course, MATH112 Score from xx where id=something
union
select 'MATH113' Course, MATH113 Score from xx where id=something
union
select 'MATH114' Course, MATH114 Score from xx where id=something

这应该照顾其余的

答案 1 :(得分:0)

为什么不呢:

echo '<tr><td>MATH111</td><td>', $row['MATH111'], '</td></tr>',
     '<tr><td>MATH112</td><td>', $row['MATH112'], '</td></tr>' [ ... ];