首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将权重集成到5星投票系统中?

将权重集成到5星投票系统中?
EN

Stack Overflow用户
提问于 2011-11-03 12:09:58
回答 2查看 438关注 0票数 2

我已经有一个5星评级系统在地方(用户投票1-5…和平均得分显示-我有一个页面,他们投票,它插入到数据库中有用户名和投票),但我现在想通过集成某种权重,它的功能只是为了增加您的投票对内容的平均得分的影响来提高它。这会让你的投票比其他情况下更“重要”。

我目前有一个$level (它是一个介于1-10之间的数字,每个用户的has...where 10是最高的,因此具有最大的效果),我想要考虑使用它。

我只是不确定该怎么做。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-03 12:13:14

如果用户有X级,您可以让他/她的投票重X级1票。您可以向表中添加另一个字段“权重”,并显示vote*weight的平均值

代码语言:javascript
复制
SELECT AVG(weight * vote)
FROM rating
WHERE item = ? 

(在哪里?是否需要id)

如果您认为这对于您的需求来说太复杂了(并且您已经存储了投票的用户),您可以使用以下查询:

代码语言:javascript
复制
SELECT AVG(r.weight * u.level)
FROM rating
JOIN user ON r.user_id = u.id
WHERE r.item = ?
票数 1
EN

Stack Overflow用户

发布于 2011-11-03 12:12:32

要做到这一点,最简单的方法是在每个级别的DB中插入一张选票。

代码语言:javascript
复制
for($i = 0; $i < $level; $i++) {
    store_vote($user, $item);
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7990172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档