2011-06-22 246 views
1

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

我的理论是,如果我动态生成一个URL,并把它放在我的用户的主页,如

‘推荐URL = www.mysite.co.uk/referral.php?user=myuser’

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

唯一的是任何人都可以添加自己的名字和注册多个帐户。

什么是最好的方式去建设这样的事情?

感谢


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

一旦有人访问了页面refer.php,然后引用者将他的信用或好处添加到他在db中的行中,同时将他的引用代码设置为0,使代码仅可用一次。

每次他点击他的页面上的按钮时,他的代码都会改变。

你认为这有效吗?

+1

编辑我的答案来回答你的编辑。 (几乎是一个回文,那里...) –

回答

2

您一般都有正确的想法,但在转诊系统中防止欺诈是困难的。您可以检查$ _SERVER中的唯一IP地址并将其添加到数据库中,以避免重复或限制来自不是来自注册用户的IP地址的推荐人。像HTTP_REFERRER一样,这也可以很容易被欺骗(例如使用TOR)。

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

编辑添加:您也可以要求推荐使用“成熟”,方法是强制推荐用户在网站上活跃一段时间(比如30天)以增加垃圾邮件发送者/作弊者的工作量。但是,这并不能“解决”问题 - 你所能做的就是让他们更难以对游戏进行游戏。偶尔,通过这样做,你可能会毁掉用户体验。那么你如何平衡它呢?棘手的问题。 :)

编辑以满足您编辑:考虑以下情况下,如果我们实施你的计划:

1)我按一下按钮,让我的代码。然后我将它粘贴到......究竟是谁?一个人?这对Facebook,MySpace分享(这是否存在?)或我的个人博客并不是特别好。我必须为我发送给该网站的每个人生成推荐代码?这不仅严重缩小,而且也是一种可怕的用户体验。

2)假设我弄清楚你在做什么。我开发了一个可以点击4万亿次按钮的机器人。现在怎么办?

+0

这是太真实。我现在正在玩一个排名系统(图片投票),拥有超过1200个“独一无二”的投票记录,该投票由一个人运行。假设什么都没有,除非你能验证用户(即登录,密钥等)。 –

+1

当然。还进行了一些编辑以提供一些关于防止欺诈的其他想法。但是如果信息/产品/服务对至少一个人来说足够有价值,他们就会知道。记住:你与最低的共同标准竞争。仅仅因为你永远不会花20个小时写博客来打败你的网站,并不意味着有0.50美元/小时赚钱潜力的人不会认为这是个好主意。 –

-1

您可以将这些信息嵌入到POSTDATA中 - 这样更安全。 或者您可以添加一项限制,任何用户只能由其他任何EXISTING用户仅维护一次。为了使其更“安全”,使用随机种子生成用户标识。

0

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

+0

这个想法是,用户会采取这个网址,并将其张贴在网络上,所以我不这样做,这将是一个有效的选项,不幸的是 – Liam

0

您可以为您的网站上的一些额外操作计算推介分数,例如注册或付款或验证卡背后的任何操作。

但是不要为您的常规合法用户构建任何障碍!