【发布时间】:2015-10-24 21:39:53
【问题描述】:
我运行了一个链接缩短器,用户为使用短网址的访问者获得报酬。他们看到一个登录页面,然后单击“跳过”,他们被重定向。但是我的一些用户试图作弊,而不是给他们的访问者像 example.com/a/53425 这样的短网址,他们给他们http://example.com/a/pugt.php?url=53425 和 >pugt.php 执行了 2 个 sql 查询:
从数据库中检索到目标url
网址的创建者每位访问者可获得 +1 分。
这意味着访问者在没有看到我的目标网页上的广告的情况下被重定向,并且用户得到了他的积分。有没有办法隐藏这个 php 文件,或者以更智能的方式执行这个 sql 查询?
这是我的登录页面上“跳过”按钮的源代码: $url 是短 url 的 id,例如 53425
<section class="example">
<br/>
<a href="http://example.com/a/pugt.php?url=<?php echo $url; ?>" ><img style="display: block; margin-left: auto; margin-right: auto;width:15%; " src="img/proceed2.png"></a>
<br/>
<center><script src="//go.padstm.com/?id=345791"></script></center>
</section>
【问题讨论】:
-
为了使某人无法像您所描述的那样作弊,获得积分以及显示广告的逻辑必须包含在同一步骤中。不知道你有没有控制权。是否可以将广告显示逻辑移动到目标 URL 中,这样 URL-shorterner 除了缩短 URL 什么都不做?
-
是的,我以前就是这么做的。如果我在登录页面的 .php 文件中添加积分,人们只是重新加载它以获得积分。必须有一个步骤来确保至少有一个人点击某物作为反机器人保护。 @NickCoons
标签: javascript php jquery html mysql