Hello Guys我讨厌在这里问愚蠢的问题,所以我希望不是这样,我怎样才能限制某人到我的下载页面?因此,如果他们再次尝试访问该页面(超过一次)以下载某些内容,它只会重定向或最好将下载链接更改为link 2
然后Link 3
,是否可以不使用数据库?< / p>
例如:
也许有饼干?我真的不知道怎么做,我用Google搜索了,但我的措辞一定不在那里......
这个或脚本有名字吗?
感谢您的时间伙计。
答案 0 :(得分:1)
:一种。强>
实现预期目标的最佳方法是database
。创建一个包含两列的数据库表:
(1)Page Visitors IP
(2)The Last Download link used by the visitor to download
file(contents) from your website.
<强>乙强> 您也可以在COOKIE的帮助下实现目标。
setcookie("Visitor IP", "Download Link used by the Visitor", $expire);
每次访问者都会访问您的网站,获取访问者IP并检查$_COOKIE["Visitor IP"]
是否已设置,如果已设置,则更新现有Cookie,否则创建新Cookie。
但是,使用Cookie不是一种方便的方法,因为可能存在
的情况 Browser does NOT Support Cookies.
Client alter the Cookies value and use the previous link for download.
因此,最简单,最优雅的方法是使用Database
。
<强> UPD:强> * 编码/设置数据库有多容易? *
在php中设置/连接数据库非常简单。 请参阅以下LINK
编码也很简单。
- 无论访问者点击下载链接,都可以通过POST或GET方法获取访客IP($ fetched_IP)。同时获取已点击的链接($ URL)访问者。
- Query the database
[例如:Select DB_IP,来自数据库的LASTLINK WHERE DB_IP = $ fetched_IP .....]
-If RowCount&gt; 0,则IP ($fetched_IP
)存在于数据库中。检查$fetched_IP
访问过的最后一个链接。
- 如果LASTLINK!=$URL
,则允许他通过$URL
从$URL
。Update数据库表格中的LAST_LINK列下载内容。
- 如果rowcount == 0,(New User
)Insert一行包含DB_IP = $ fetched_IP(访客IP)和LAST_LINK = $ URL。
答案 1 :(得分:0)
一个简单的方法是使用哈希表(关联数组)。当它们满足访问文件的条件时,使用唯一URL作为键并将文档路径作为值,向哈希表添加条目。将其保存到会话中。当他们访问url时,页面会检查url是否在哈希表中。如果是,则从哈希表中删除URL并流式传输该文件。如果你想允许多次使用,你可以存储一个倒计时变量和url,它会随着每次访问而减少,只有当计数为零时才从哈希表中删除url。