【 tulaoshi.com - PHP 】
                             
                               这是本系统的第四个文件.upload.php主要负责,文件名的校验 
,上传文件和文件地址的归档 
<html 
<head<title文件上传</title 
<body<div style="width:750"<center 
<?php 
//上传的栏目$col,$upfile上传的文件,$writer作者,$intro简介 
$writer=substr(htmlspecialchars($writer),0,20); 
$intro=substr(htmlspecialchars($intro),0,100); 
$maxsize=512000*2;//最大的文件长度 
$pathtemp=explode("/",$HTTP_ENV_VARS["PATH_INFO"]); 
$pathtemp[sizeof($pathtemp)-1]=""; 
$cgiroot="http://".$HTTP_HOST.implode("/",$pathtemp);//主机加当前目录 
//$cgiroot="http://eccct.51.net/cgi-bin/"; 
$uploadto="../uploadfile/".$col."/";//上传到的子目录 
$goback="<br<br<br<br<center系统将在3秒后返回....</center<scriptsetTimeout('location.href="view.php?col=".$col.""',3000)</script"; 
set_time_limit(300);//可持续五分钟 
//if(!is_dir($uploadto)) mkdir($uploadto,0755); 
if($upfile_size$maxsize) 
die("<h1<font color=red对不起,您要上传的文件太大了,超过了1MB</font</h1".$goback); 
$filename=$upfile_name; 
$i=0; 
while(file_exists($uploadto.$filename)){ 
$i++; 
$filesp=explode('.',trim($upfile_name)); 
//echo $filesp[sizeof($filesp)-1]; 
//echo $filesp[sizeof($filesp)-1]!="zip"; 
//echo $filesp[sizeof($filesp)-1]!="rar"; 
if((trim($filesp[sizeof($filesp)-1])!="zip") && (trim($filesp[sizeof($filesp)-1])!="rar")){ 
die("<h1<font color=red上传文件的后缀名必须是zip或rar(小写)</font</h1".$goback); 
} 
$filename=$filesp[0].$i.".".$filesp[1]; 
} 
if ($i0) 
echo ("<font color=red对不起,您要上传的文件名已经存在了,<br系统自动将其更名为".$filename."</font"); 
//检查合理性结束 
if(!copy($upfile,$uploadto.$filename)) die("<h1<font color=red系统出现错误03,请将文件重传<br</font</h1".$goback); 
//写文件列表 
$fileurl=$uploadto.$filename;//文件url 
$flists=$uploadto.$col.".lst";//文件列表位置 
for($i=0;$i<100 && !file_exists($flists);$i++); 
if($i==99) { 
unlink($uploadto.$filename); 
die("系统出错00".$goback); 
} 
copy($flists,$flists.".bak"); 
if(!$fp=fopen($flists,"r")){ 
unlink($uploadto.$filename); 
die("出错01".$goback); 
} 
$filerc=explode("",fread($fp,filesize($flists)));//上传的档案资料 
fclose($fp); 
unlink($flists); 
$firstrec=explode("<",$filerc[0]); 
if(!$firstrec[0]) $id=1; 
else $id=$firstrec[0]+1; 
 $oldinfo=implode("",$filerc); 
$newinfo=$id."<".$writer."<".$filename."<0<".$intro."<".$upfile_size."<0".$oldinfo; 
//编号<作者<文件位置<投票计数<简介<文件大小<文件下载次数 
if(!$fp=fopen($flists,"w")){ 
unlink($uploadto.$filename); 
copy($flists.".bak",$flists); 
die("出错02".$goback); 
} 
fwrite($fp,trim($newinfo)); 
fclose($fp); 
//写文件列表结束 
//文件传送 
echo "<h1传送成功</h1"; 
echo "文件在<a href=".$fileurl."".$cgiroot.$fileurl."</a.$goback"; 
//文件传送成功 
? 
</center 
</div 
</body 
</html 
这是本文的最后一篇,主要介绍如何使用系统,让我们用个事例来说明: 
例如我们要做flash作品上传投票,那我们只需要在../uploadfile/(相对系统php文件所在位