推荐系统

时间:2011-06-22 19:46:50

标签: php mysql

我目前有一个用PHP构建的网站,我希望今晚建立一个推荐系统。

我的理论是,如果我动态生成网址并将其放在用户的主页上,例如

“推荐网址= www.mysite.co.uk/referral.php?user=myuser”

然后我可以在页面referral.php它获取用户名和运行SQL查询更新其对应的行我的表中的脚本。

唯一有人可以添加自己的名字并注册多个帐户。

建立这样的东西的最佳方法是什么?

由于


假设得到的推荐网址我的用户必须点击一个按钮,生成的推荐网址为兰特即mysite.com/refer.php?user=234234,同时将其存储在一个数据库。

一旦有人访问该页面refer.php,引荐然后得到他的学分或利益加入到他行的分贝,同时他的推荐码设置为0,使得代码只可一次。

每当他点击页面上的按钮时,他的推荐代码就会改变。

你觉得这有效吗?

4 个答案:

答案 0 :(得分:2)

您通常有正确的想法,但在转介系统中防止欺诈很困难。您可以在$ _SERVER中检查唯一的IP地址,并将其添加到数据库中以用于每个请求,丢弃重复项或限制来自非注册用户的IP地址的引用。与HTTP_REFERRER一样,这也可以轻松欺骗(例如使用TOR)。

这是一个棘手的问题,而不是你能真正解决的问题。像大多数欺诈案例一样,您只能尽力减轻这种影响。

编辑添加:您还可以通过强制推荐用户在网站上活动一段规定的时间(比如30天)来要求推荐“成熟”,以增加垃圾邮件发送者/作弊者的工作量。但同样,这并没有“解决”问题 - 所有你能做的就是让他们更难以游戏系统。偶尔,通过这样做,你可以破坏用户体验。那么你如何平衡呢?棘手的问题。 :)

编辑地址编辑:如果我们实施您的计划,请考虑以下方案:

1)我点击按钮获取我的代码。然后我把它粘贴到......究竟是谁?一个人?这对于在Facebook,MySpace(这是否存在?)或我的个人博客上分享并不是特别好。我必须为我发送到网站的每个人生成推荐代码?这不仅非常严重,而且用户体验也非常糟糕。

2)让我说我弄清楚你在做什么。我开发了一个机器人,点击该按钮4万亿次。现在怎么办?

答案 1 :(得分:0)

您可以使用“HTTP_REFERER”值来检查请求来自哪个页面,并且只允许该用户从其页面中投票。这可能是欺骗性的,但大多数人都不知道如何。

答案 2 :(得分:0)

您可以在推荐网站上计算一些其他操作,例如注册或付款或验证验证码背后的任何操作。

但不要为正规合法用户制造任何障碍!

答案 3 :(得分:-1)

你可以在POSTDATA中嵌入这些信息 - 它更安全一点。 或者,您可以添加一个限制,任何用户可能仅由任何其他EXISTING用户进行一次投票。为了使其更“安全”,使用随机种子生成userIds。