Я разрабатываю звездную рейтинговую систему с 1-5 звездами. В моей базе данных я сохраняю их так:
$stars_1 = 1;
$stars_2 = 6;
$stars_3 = 3;
$stars_4 = 11;
$stars_5 = 22;
$total_votes = 43
Когда пользователь голосует, используя, например, 3 звезды, я обновляю stars_3 на 1 и total_votes на 1. Затем мне нужно рассчитать средний рейтинг (звезды).
Я делаю это прямо сейчас, но я не работаю (результат кажется неправильным):
(($stars_1 + $stars_2 + $stars_3 + $stars_4 + $stars_4) / $total_votes);