[英]Average Rating script
我之前曾問過這個,但我沒有得到一個非常明確的答案。
我需要知道如何為網站制作評級腳本。 我有一個表單,提交十分之一到mysql。 你如何使用php從mysql列中顯示平均評分?
一個人建議有兩張桌子; 一個用於所有評級,一個用於每個頁面的平均評級。 有比這更簡單的方法嗎?
您希望在每次頁面崩潰時存儲評級。 因為如果你只是將平均評分存儲在一列中,例如
ratings (page_id, average_rating)
要確定它並不容易:
並且您不能允許用戶更改他們的評級,因為所有內容都被平鋪成一行。 如果使用MYSQL中的平均函數,則可以不使用第二個表
$result = mysql_query("SELECT AVG(rating) FROM ratings GROUP BY page_id WHERE page_id = '$pageid'");
$rating_for_page = mysql_fetch_row($result);
$rating = $rating_for_page[0];
請注意,我假設每個評級都存儲為單獨的行
如果您收集單個功能的評級,讓我們說FeatureX並放在列中,讓我們說FCOLX,那么您可以:
計算平均值通常如下:
$myRatings = $dbHandler->fetch(); //generic fetch
$totalRatings = count($myRatings);
$sum = 0;
foreach($myRatings as $index=>$rating){
$sum+=$rating['FCOLX']; //where FCOLX is the column where you have the user rating [1-10];
}
$average = 0;
if($totalRatings>0){
$average = $sum/$totalRatings;
}
得出的平均值將是您使用的1-10的等級。
對於評級而言,簡單的平均值本身並不是很好。 例如,如果一百人投票平均為8.5,那么只有一個人在其他投票上投票10會給它一個更好的排名。
不久前我曾經問過一個類似的問題 ,你可能會對此感興趣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.