在我的网页上开发“你试图太快下载文件”

时间:2013-05-07 06:26:18

标签: php javascript download webpage

我有一个带有一些直接下载链接的网页(HTML,php,javascript)。 我想阻止在短时间内点击所有这些下载链接的用户。

我想要这样的事情: 1)点击链接 - >直接下载 2-a)太快点击另一个链接 - >重定向到带有文本的新页面“请在下载其他文件之前稍等一下” 2-b)在X时间之后点击另一个链接 - >直接下载

请建议我如何做到这一点(更简单的方法,不需要是一个“高安全性”,只是为了限制意外点击)。 谢谢

3 个答案:

答案 0 :(得分:1)

  1. 以某种方式识别用户(例如,使用Cookie(可以删除)或其IP地址(可以共享更好的用户))。
  2. 根据时间戳记在数据库中记录下载
  3. COUNT(*) from downloads WHERE identifier=? and timestamp <= ?

答案 1 :(得分:1)

如果您使用的是sessions,那么“在其中保存上次下载时间”是一种方式:

$limit = 3; // seconds
$now   = time();
$last  = isset($_SESSION['download-stamp']) ? $_SESSION['download-stamp'] : 0;

if($now - $last < $limit){
    header('Location: wait.html');
    exit;
}

$_SESSION['download-stamp'] = $now;

// flush file

答案 2 :(得分:0)

当用户点击下载链接并将其与指定的持续时间进行比较时,您可以使用javascript检查时间。如果超过持续时间较长,请重定向到页面或提醒某些信息。