用户是否有登录名?如果不只是使用会话,甚至更好地跟踪其ip地址.
这是一个会话示例:
$_SESSION['file_downloading']==true;
$file = fopen($local_file, "r");
while(!feof($file))
{
// send the current file part to the browser
print fread($file, round($download_rate * 1024));
// flush the content to the browser
flush();
// sleep one second
sleep(1);
}
$_SESSION['file_downloading']=null;
fclose($file);}
然后在所有这些代码之上,
if(!empty($_SESSION['file_downloading']))
//执行重定向或降低其下载速度等.
下一个选项是通过IP地址.
//http://wiki.jumba.com.au/wiki/PHP_Get_user_IP_Address
function VisitorIP()
{
if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
$TheIp=$_SERVER['HTTP_X_FORWARDED_FOR'];
else $TheIp=$_SERVER['REMOTE_ADDR'];
return trim($TheIp);
}
获取访问者IP地址,并将其与日期时间戳一起存储在数据库中.文件下载完成后,只需删除该IP地址即可.您正在使用数据库系统吗?