【发布时间】:2013-12-21 17:11:16
【问题描述】:
我在开发过程中遇到了一个很奇怪的问题,解释起来很简单。我有一个分类表,每个分类都属于任何类别。让我们看看:
Sortiment 1 | Category 2
Sortiment 2 | Category 3
Sortiment 3 | Category 1
Sortiment 4 | Category 1
Sortiment 5 | Category 1
Sortiment 6 | Category 3
现在,我想按类别订购变得容易了:
SELECT * FROM sortiment ORDER BY category
Sortiment 3 | Category 1
Sortiment 4 | Category 1
Sortiment 5 | Category 1
Sortiment 1 | Category 2
Sortiment 2 | Category 3
Sortiment 6 | Category 3
如果我们这样做:
<table>
<?php
while ($r = mysql_fetch_array($q)) {
echo "<tr> <td>" . $r['sortiment'] . "</td> </tr>";
}
?>
</table>
我得到以下方案(无类别):
<table>
<tr>
<td> Sortiment 3 </td>
</tr>
<tr>
<td> Sortiment 4 </td>
</tr>
<tr>
<td> Sortiment 5 </td>
</tr>
<tr>
<td> Sortiment 1 </td>
</tr>
<tr>
<td> Sortiment 2 </td>
</tr>
<tr>
<td> Sortiment 6 </td>
</tr>
</table>
但这不是我需要的。我需要以下打印输出:
<table>
<tr class="mycategory">
<td> Category 1 </td>
</tr>
<tr>
<td> Sortiment 3 </td>
</tr>
<tr>
<td> Sortiment 4 </td>
</tr>
<tr>
<td> Sortiment 5 </td>
</tr>
<tr class="mycategory">
<td> Category 2 </td>
</tr>
<tr>
<td> Sortiment 1 </td>
</tr>
<tr class="mycategory">
<td> Category 3 </td>
</tr>
<tr>
<td> Sortiment 2 </td>
</tr>
<tr>
<td> Sortiment 6 </td>
</tr>
</table>
注意,这不关心类别和分类的顺序。
<table>
<?php
while ($r = mysql_fetch_array($q)) {
if (header) {
... once write header of category ...
} else {
echo "<tr> <td>" . $r['sortiment'] . "</td> </tr>";
}
}
?>
</table>
如何像上述方案一样打印出 <tr class="mycategory">Specific category</tr> 一次?
【问题讨论】:
-
我需要像上面的方案一样打印出来。
标签: php mysql printing html-table