来源:自学PHP网 时间:2014-12-25 09:57 作者: 阅读:次
[导读] 不用数据库的多用户文件自由上传投票系统2,这是本系统的download.php,主要负责下载和记数,其中文件格式均在注释中说明.lt;htmlgt;lt;?php//传入num为要下载的文件号,col=要下载的分栏//ip不超...
这是本系统的download.php,主要负责下载和记数,其中文件格式均在注释中说明.
<html> <?php //传入num为要下载的文件号,col=要下载的分栏 //ip不超时下载次数加一 //文件格式 //0编号<1作者<2文件位置<3投票计数<4简介<5文件大小<6文件下载次数 //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="<br><br><br><br><center>系统将在3秒后返回....</center><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<sizeof($ip_times);$i++){ $ip=explode(":",$ip_times[$i]); if($ip[1]==""||$ip[0]==""||$ip[2]=="") continue; eval ('$temp='.$abstime.'-'.$ip[2].';'); if($temp<$overtime&&$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;$i<100 && !file_exists($recfile);$i++); if($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<sizeof($info);$i++){ $items=explode("<",$info[$i]); if(!trim($items[0])) continue; if(trim($items[0])==$num){//要下载的项目 if($firstdown) $items[6]++; $filepath=$uploadto.$items[2]; $info[$i]=implode("<",$items); break; } } //$writetofile=implode(">",$info); if(!$fp=fopen($recfile,"w")){ copy($votefile.".bak",$votefile); die("出错02".$goback); } for($i=0;$i<sizeof($info);$i++){ if(trim($info[$i])!="") fputs($fp,trim($info[$i].">")); } fclose($fp); echo "<head><meta http-equiv='refresh' content='3;URL=".$filepath."'>"; echo "<link rel='stylesheet' href='../CSS/eccct.css'></head>"; echo "<body class=tb >"; echo "<div >"; echo "<br><br><br>"; echo "<div class='values'>您的浏览器会在三秒钟后自动下载</div>"; echo "<br><br><br>"; echo "<div class='values'>或者点击<a href='".$filepath."'>此处</a>下载</div>"; echo "<br><br><br>"; echo "</div>"; //echo $HTTP_ENV_VARS["PATH_INFO"]; //echo "<script>window.location.href='".$filepath."';window.close();</script>"; echo "</body>"; //header("Content-type: application/.rar"); //header("Content-Disposition: attachment; filename=".$filepath); //Header("Location: ".$filepath); //header("Content-Description: PHP3 Generated Data ?> </html> |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com