在html页面上反转mysql_fetch_array的显示

I have a discussion type page, where users can enter their replies on different subjects. For this, I have a table name replies with fields replyID, topicID, userID, replybody, time

On the page, where I display the result, I use this php command:

$run = mysql_query("SELECT * FROM replies WHERE topicID = $topicnumber ORDER BY time DESC Limit 5");

while($data= mysql_fetch_array($run)){
// do formatting and display data 
}

as you can see, the page initially displays only 5 replies on a topic (after which, if interested, user clicks to visit the page where all replies are displayed).

the thing is, the above code displays correctly the recent 5 replies, but I want to change the order of its display. It shows the recent most reply on top, and older replies are displayed as we go down, but I want to change this order, showing the recent most reply on bottom.

I think I'm missing a very simple point here, since most of the website have this feature where recent most comments go down, but hey, "no question is small".

Use a nested query to reverse the order in SQL:

SELECT *
FROM (
    SELECT * FROM replies WHERE topicID = $topicnumber ORDER BY time DESC Limit 5
) AS a
ORDER BY time ASC

The inner query will return your most recent 5 records, while the outer query will reverse the sort order of those 5.

I don't think that's very easy in sql.

I would just load the results in an array and use array_reverse() to reverse the order. Then you can loop through the array and display the values like you do now.

Otherwise I think you need to do 2 queries, one to get the total amount and then one to limit your result set to the last x items.