我在一个mysql表中有注释,每个都有一个数字(等级)。我希望我的网站在按最高编号排序的页面上显示这些评论。换句话说,所有注释应该出现,但是根据它们的等级(int)按降序排列。在每个评论下,我还想生成一个textarea来添加新评论。我想这应该全都放在一张桌子里。因为行数根据返回的帖子数量而变化,因此我无法生成表格。
这是我到目前为止所做的:
<?php
include 'connect.php';
$get=mysql_query("SELECT * FROM table WHERE $x='comments'");
$numberofrows=mysql_num_rows($get);
while ($row=mysql_fetch_assoc($get)){
$comment=$row['comment'];
$rank=$row['rank'];
echo "<table>";
echo "</table>";
}
?>
答案 0 :(得分:1)
要在SQL中使用ORDER BY
获取订单:
SELECT * FROM table WHERE comments=$x ORDER BY rank DESC
您应该将<table>
元素放在循环之外
echo '<table>';
while ($row=mysql_fetch_assoc($get)){
echo '<tr>'
echo "<td>$row['comment']</td>";
echo '</tr>';
echo '<tr>';
echo "<td><form> ... </form></td>";
echo '</tr>';
}
echo '</table>';
答案 1 :(得分:1)
<?php
include 'connect.php';
$get=mysql_query("SELECT * FROM table WHERE $x='comments'");
$numberofrows=mysql_num_rows($get);
echo '<table>';
while ($row=mysql_fetch_assoc($get)){
echo '<tr>'
echo "<td>$row['comment']</td>";
echo "<td>$row['rank']</td>";
echo '</tr>';
}
echo '<tr>
<td colspan="2">
<textarea></textarea>
</td>
</tr>';
echo '</table>';
?>