2013-11-26 179 views
0

我正在構建一個網站,用戶可以在其中評分1-5的其他用戶資料。PHP平均評分系統

我的問題是:

我如何讓這個每個評級用戶接收計算平均值。然後根據用戶的平均評分,他們得到一個等級號。平均得分最高的用戶排名第一,依此類推。

+0

你在哪裏存儲這些數據,你有數據庫嗎?最好在檢索數據庫時讓數據庫平均值和排序數據。 – kery

+0

我不知道太多的PHP,但是我正在使用一個數據庫MySQL – user3034897

+0

http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_avg –

回答

0

與表users_ratings的列user_idrating

插入一個新的等級。

$sql = "INSERT INTO users_ratings SET user_id=$user_id, rating=$rating" 

檢索用戶和按平均評級(最高優先)排序的平均評級。

$sql = "SELECT user_id, avg_rating AS AVG(rating) FROM users_ratings GROUP BY user_id ORDER BY AVG(rating) DESC" 
+0

可能可以做到:'ORDER BY avg_rating DESC' - 我不確定,但'AVG(評級)'應該可以工作。 – flcoder