这是本系统的download.php,主要负责下载和记数,其中文件格式均在注释中说明.
//传入num为要下载的文件号,col=要下载的分栏
//ip不超时下载次数加一
//文件格式
//0编号//ip文件格式 地址:项目:时间
$uploadto="../uploadfile/".$col."/";//上传到的子目录
$cgiroot="http://eccct.51.net/cgi-bin/"; //主机加当前目录
$pathtemp=explode("/",$HTTP_ENV_VARS["PATH_INFO"]);
$pathtemp[sizeof($pathtemp)-1]="";
$cgiroot="http://".$HTTP_HOST.implode("/",$pathtemp);//主机加当前目录
$ipfile=$uploadto.$col.".ipd";//下载用的ip文件
$overtime=4;//超时时间小时
$goback="
系统将在3秒后返回....
<script>setTimeout('location.href="view.php?col=".$col.""',3000)</script>";
$recfile=$uploadto.$col.".lst";
//取出ip文件
$fp=@fopen($ipfile,"r") or die("对不起该投票不合法".$goback);
$ipinfo=fread($fp,filesize($ipfile));
fclose($fp);
unlink($ipfile);
$times=getdate();
$abstime=$times["yday"].sprintf("%02d",$times["hours"]);
//绝对时间
//把超时的ip去掉
$ip_times=explode("|",$ipinfo);
$temp="";
$ipinfo="";
for($i=0;$i
$ip=explode(":",$ip_times[$i]);
if($ip[1]==""||$ip[0]==""||$ip[2]=="") continue;
eval ('$temp='.$abstime.'-'.$ip[2].';');
if($temp=0){
$ipinfo.=($ip_times[$i]."|");
}
}
//echo $ipinfo;
if(strstr($ipinfo,$REMOTE_ADDR.":".$num))
{
$fp=@fopen($ipfile,"w") or die("出现错误".$goback);
fwrite($fp,$ipinfo);
fclose($fp);
$firstdown=0;//第一次下载
}
else{
$firstdown=1;//不是第一次下载
$ipinfo=$ipinfo.$REMOTE_ADDR.":".$num.":".$abstime."|";
$fp=@fopen($ipfile,"w") or die("出现错误".$goback);
fwrite($fp,$ipinfo);
fclose($fp);
}
//ip判断结束
for($i=0;$iif($i==99) die("系统出错00".$goback);
$fp=@fopen($recfile,"r") or die("对不起不合法".$goback);
$info=explode(">",fread($fp,filesize($recfile)));
fclose($fp);
copy($recfile,$recfile.".bak");
unlink($recfile);
for($i=0;$i $items=explode(" if(!trim($items[0])) continue;
if(trim($items[0])==$num){//要下载的项目
if($firstdown)
$items[6]++;
$filepath=$uploadto.$items[2];
$info[$i]=implode(" break;
}
}
//$writetofile=implode(">",$info);
if(!$fp=fopen($recfile,"w")){
copy($votefile.".bak",$votefile);
die("出错02".$goback);
}
for($i=0;$i if(trim($info[$i])!="") fputs($fp,trim($info[$i].">"));
}
fclose($fp);
echo "";
echo "";
echo "";
echo "
";
echo "
您的浏览器会在三秒钟后自动下载
";
echo "
";
echo "
";
echo "
";
echo "
";
//echo $HTTP_ENV_VARS["PATH_INFO"];
//echo "<script>window.location.href='".$filepath."';window.close();</script>";
echo "";
//header("Content-type: application/.rar");
//header("Content-Disposition: attachment; filename=".$filepath);
//Header("Location: ".$filepath);
//header("Content-Description: PHP3 Generated Data
?>
以上就介绍了 不用数据库的多用户文件自由上传投票系统2,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。