繁体   English   中英

在喜欢/不喜欢投票系统方面需要帮助

Need help on like/dislike voting system

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我想获得一些帮助来建立一个喜欢/不喜欢的排序算法来找到最好的条目。 我想了一种方法来做到这一点,但是这种方法有两个主要缺陷,我想知道是否有更好的方法。

以下是我的想法:

条目将按l/d给出的比率排序,其中l = number of likesd = number of dislikes ,因此具有较高比率的人有更大的喜欢数,并且比那些比率低的人应该得到更高的位置.

这种方法有两个问题:

1:如果不喜欢的数量为 0,则l/d将是不可能的。 因此,即使一个条目有 1000 个喜欢和 0 个不喜欢,它仍然不会进入记分板。

2:喜欢和不喜欢的条目与评分多的条目相比具有优势,因为它需要较低的评分来影响比率并给条目一个好分数。

你怎么看?

编辑:这是解决第一个问题的可能替代方法: (l + 1) / (d + 1) 对此有任何反馈吗?

3 个回复

这可能是相关的: 如何不按平均评分排序

要消除除以零,您可以在分子和分母上加 1 以获得 (l+1)/(d+1)。 如果您想对更多喜欢的条目进行更高的排名,那么您可以将排名公式乘以 log(喜欢的数量 + 1)。 在这里添加一个以消除如果条目有零个赞而导致的数学错误。 对于接下来的讨论,假设日志的底数为 10。因此,满足要求的排名公式为 (likes + 1)/(dislikes + 1) * log(likes + 1)。

请注意,如果因为 log(1) = 0 而没有喜欢,则此公式提供的排名为 0。假设投票与一个喜欢投票和一个不喜欢投票相关联。 那么秩是 2/2*log(2) = 0.3,因为 log(2) = 0.3。 现在考虑另一个有 9 个喜欢和 9 个不喜欢的关系。 那么排名是 10/10*log(10) = 1,因为 log(10) = 1。也就是说,log(likes) 项对喜欢更多的关系的排名高于喜欢更少的关系。

这对我来说效果最好。

rank = likes * 100 / (likes + dislikes)

它按较高的喜欢排序,然后是任何喜欢和/或不喜欢的活动,然后是没有活动。 例子:

likes, dislikes => rank
0, 0 => 0            //avoid /0 error
3, 3 => 50
3, 0 => 100
1 如何避免大众喜欢和不喜欢投票系统

我知道这个问题以前曾被问过,但我从未找到合适的答案。 我想用不同的条目构建一个类似博客的页面,每个页面都可以被喜欢和不喜欢。 我读到我可以用以前的喜欢,ip地址和用户客户端创建数据库,并设置cookie。 但是可以操纵用户客户端,可以更改ip地址和删除Cookie。 如果攻击 ...

2014-02-27 02:10:20 2 106   php
2 喜欢/不喜欢系统

我在Ruby on Rails项目上有一个喜欢/不喜欢的系统。 我想在短时间内编写代码并使处理程序成为一个函数。 所以这是我的js代码: 我的HTML代码: 我的问题:我如何知道单击了哪个元素:使用likeAction或dislikeAction的span标签。 当我得到这 ...

3 MySQL处理通过AJAX和PHP为喜欢/不喜欢的系统投票

我有一个网站,其中包含针对其内容的投票系统。 因此,我建立了一个名为votes的MySQL表,该表的uid , pid和value列与用户投票的UUID,帖子的基于文本的ID和投票的布尔值( 0或1表示不喜欢)。 我已经看到了几个与此类似的问题,尽管似乎没有一个问题直接涉及在PHP和My ...

4 如何设计一个“我喜欢”和“我不喜欢”的系统?

我需要创建一个投票系统。 即使它们不同,投票也可能适用于两个实体(目前,但可能不会有太大变化)。 这两个实体是文章和评论,但是,评论只能被投票(很像 SO 与答案和评论一起使用)。 我虽然为了避免 DRY 原则,我可以使用 Vote 实体,然后为文章和评论添加一个关系表,但我的“投票”更像是“我喜 ...

5 帖子喜欢和不喜欢系统

我想包括一个类似于Facebook的“喜欢/不喜欢”系统,到目前为止,我已经将“喜欢/不喜欢”列设置为“文本”类型。 这样一来,我就可以为喜欢/不喜欢该帖子的用户添加ID。 那将是最好的方法吗? 此外,除了上述问题外,如何停止用户再次按下“喜欢和不喜欢”按钮? 因为,一旦用户喜欢了一个帖 ...

6 GridView中的喜欢/不喜欢投票

我正在创建一个大学网站,有点像社交网站,人们可以在彼此的墙上张贴剪贴簿留言。 我想在每张剪贴簿留言中加入喜欢/不喜欢或投票/否决。 我创建了一个名为tbl_like的表... LikeId | ScrapId | FromId | LikeStatus | 时间 废料表: ...

7 我的喜欢/不喜欢系统无法正常工作

我正在尝试创建一个喜欢/不喜欢的系统,以便用户可以对视频进行评分。 但是,我在一个问题上停留了一段时间。 单击“ like”按钮不会更新MySQL表。 我添加了显示视频的代码,因为我不确定这是否是导致问题的原因。 下面是mySQL代码, 我尝试过使用来编辑它 但 ...

8 使用AJAX的喜欢/不喜欢系统

我目前正在做我的第一个RoR项目。 现在,我想将一个喜欢/不喜欢的系统集成到我的应用程序中。 我有一些代码,但仅在重新加载页面时才有效。 我的目标是在不重新加载页面的情况下喜欢/不喜欢帖子(使用Ajax,而不是内置页面)。 那么,这是我的代码,这是怎么了? 我的控制器 我的 ...

9 PHP中的喜欢/不喜欢系统

我正在用PHP和mysqli创建一个不喜欢的系统; 我还通过在uid的帮助下加入关注者和照片表来获取用户关注者的帖子。 现在,我希望用户喜欢关注者的图片,但无法获取图片的个人ID。 这是我获取用户关注者图片的代码: 这是我插入喜欢的代码 这是我获取所有变量的代码 这 ...

10 MySQL SELECT概率喜欢不喜欢的系统

我正在为我的博客网站创建一个YouTube评论风格(喜欢不喜欢)PHP应用。 我希望评论随意排列; 但是,我希望有机会根据不喜欢的比例来增加。 例如: 5个喜欢和1个不喜欢的评论比4个喜欢和2个不喜欢的评论更有可能被选中,因为5/1高于4/2。 因此,喜欢不喜欢的比例与在评论部 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM