2017-09-14 200 views
1

新手在這裏。我在PHP中遇到了一些麻煩。我目前有1個數據庫,由兩個表組成。這兩張表被標記爲membersmember_stats。成員表由3列(Fname, Lname, MemberID),member_stats表組成,列11列(user_name, first_name, last_name, avatar, num_friends, num_checkins, total_cards, total_selfmade_cards, total_followings, total_photos)用php對數據庫數據進行排序

我從我的數據庫

$result = mysqli_query($con,"SELECT * FROM member_stats "); 

獲取數據,我然後用下面的代碼中的數據顯示爲HTML表格在頁面上。

while($row = mysqli_fetch_array($result)) 
{ 
echo "<tr>"; 
echo "<td><div class='user_nav_btn open' ><img src='" . $row[avatar] . "' alt='' /></div></td>"; 
echo "<td>" . $row['first_name'] . "</td>"; 
echo "<td>" . $row['MemberID'] . "</td>"; 
echo "<td>" . $row['num_friends'] . "</td>"; 
echo "<td>" . $row['total_cards'] . "</td>"; 
echo "<td>" . $row['num_checkins'] . "</td>"; 
echo "<td>" . $row['total_selfmade_cards'] . "</td>"; 
echo "<td>" . $row['total_followings'] . "</td>"; 
echo "<td>" . $row['total_photos'] . "</td>"; 
echo "</tr>"; 
} 

我試圖讓表打印的基礎上total_cards值數據中的所有行順序從最高到最低。無論我嘗試了什麼,我都無法讓它工作。我只有在我嘗試過的每件事上遇到錯誤。有什麼建議麼?我幾次看過http://php.net/manual/en/array.sorting.php,沒有運氣。

+5

在查詢'order by total_cards'中執行排序# – rtfm

回答

1

由於firt的評論可以讓你在良好的方式上,你不需要像PHP那樣排序,只需要一個Query SQL就足夠了。

SELECT * FROM member_stats ORDER BY total_cards ASC 

默認情況下,一個SELECT是ASC,我只是說了他知道自己可以做(ASC | DESC)在查詢排序。

+0

WOW,我真的在想這個,並且讓它比我猜想的要困難。 – user1072014

2

最簡單的方法是讓你更新你的SQL;你可以爲你的服務器請求結果。

$sql = "SELECT * FROM member_stats ORDER BY total_cards"; 

你也有ASC(升序)或DESC(降序)的關鍵字,將決定從上升到下降的順序。

這將查詢數據庫獲取在total_cards

順序您還可以得到所有的結果在陣列中的數據,然後排序它使用一些JavaScript表庫,並操縱它的方式。