использовать PHP для создания таблицы HTML из запроса MSQL без дубликатов строк?

Я создаю экран для веб-страницы студенческого модуля, которая отображается в этом формате

2001/02

  • Информатика
  • Биология
  • Lorem Ipsum

2002/03

  • Предмет
  • Предмет
  • Предмет

В этом стиле Используемая база данных содержит информацию, такую ​​как

  • год (2001/02)
  • кредит (10)
  • mods.mid (CS500)
  • mtitle (название модуля – разработка программного обеспечения, биология, химия и т. д.)

PHP-код, который у меня есть, отображает каждый заголовок модуля, так что буквально я гигантский список модулей, тогда как я хочу разделить его, как описано выше, Годы, отображаемые ТОГДА каждый модуль за этот год. Кто-нибудь мне помогает? Код ниже:

<?php echo "<table cellspacing='40'>"; $query2 ="SELECT mods.mid, ayr, mtitle, credits FROM stud, smod, mods WHERE stud.sid = '".$_POST['stuNo']."' and stud.sid = smod.sid and smod.mid = mods.mid order by ayr ASC"; $result = mysql_query($query2) or die(mysql_error()); echo "Enrolment and progress"; echo "<table width='150' border='1'>"; echo "<th> Module Selection</th>"; echo"<td>".$row["ayr"]."</td>"; while ($row = mysql_fetch_array($result)) { $temp_year=$row["ayr"]; echo "<tr>"; if ($temp_year!=$row["ayr"]){ echo "<td>" . $row["ayr"] . "</td>"; } echo "<td>" . $row["mid"] . "</td>"; echo "<td>" . $row["mtitle"] . "</td>"; echo "<td>" . $row["credits"] . "</td>"; echo "</tr>"; } echo "</table>"; ?> 

Я бы не знал, как отделить его к году, любая помощь велика. Спасибо.

Вероятно, я бы назвал это так, вероятно, не единственным способом, но должен работать на основе того, что, как я считаю, вы пытаетесь достичь. Обязательно добавьте «заказ» в свой SQL-запрос.

 echo "<table cellspacing='40'>"; $query2 = "SELECT mods.mid, ayr, mtitle, credits FROM stud, smod, mods WHERE stud.sid = '".$_POST['stuNo']."' and stud.sid = smod.sid and smod.mid = mods.mid ORDER BY ayr DESC"; $result = mysql_query($query2) or die(mysql_error()); echo "Enrollment and Progress"; echo "<table width='150' border='1'>"; echo "<tr><td colspan="3"><b>Module Selection</b></td></tr>"; $year = ""; while ($row = mysql_fetch_array($result)) { if ($year != $row["ayr"]) { echo "<tr><td colspan="3"><b>" . $row["ayr"] . "</b></td></tr>"; $year = $row["ayr"]; } echo "<tr>"; echo "<td>" . $row["mid"] . "</td>"; echo "<td>" . $row["mtitle"] . "</td>"; echo "<td>" . $row["credits"] . "</td>"; echo "<tr>"; } echo "</table>";