把下面代码另存为uploads.php
<BR> <BR> <BR> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <BR> <meta name="author" content="xyl" /> <BR> <title>简易文件上传</title> <BR> <BR><style type="text/css"> <BR></style> <BR><body> <BR> <BR>请选择文件: <br> <BR> <br> <BR> <BR> <BR><br /> <BR><br /> <BR><br /> <BR><br /> <BR><? <BR>function file_list($dir,$pattern=""){ <BR> $arr=array(); <BR> $dir_handle=opendir($dir); <BR> if($dir_handle){ <BR> while(($file=readdir($dir_handle))!==false){ <BR> if($file==='.' || $file==='..'){ <BR> continue; <BR> } <BR> $tmp=realpath($dir.'/'.$file); <BR> if(is_dir($tmp)){ <BR> $retArr=file_list($tmp,$pattern); <BR> if(!empty($retArr)){ <BR> $arr[]=$retArr; <BR> <b>%本文@来源gao@!dai!ma.com搞$$代^@码!网</b><strong>搞代gaodaima码</strong> } <BR> } else { <BR> if($pattern==="" || preg_match($pattern,$tmp)){ <BR> $arr[]=$tmp; <BR> } <BR> } <BR> } <BR> closedir($dir_handle); <BR> } <BR> return $arr; <BR>} <BR>$d_root = $_SERVER['DOCUMENT_ROOT']; <BR>$store_dir = "$d_root/uploads/";// 上传文件的储存位置 <BR>if (!is_dir($store_dir)) { <BR> mkdir($store_dir,0777,true); <BR>} <BR>$file_arr = file_list($store_dir); <BR>foreach ($file_arr as $v=>$k) { <BR> $d_root_no = strlen($d_root); <BR> $l = substr($k,$d_root_no); <BR> echo $v.'号文件下载地址为: '.$_SERVER['SERVER_ADDR'].$l.'<br />'; <BR>} <BR>$upload_file=isset($_FILES['upload_file']['tmp_name'])?$_FILES['upload_file']['tmp_name']:''; <BR>$upload_file_name=isset($_FILES['upload_file']['name'])?$_FILES['upload_file']['name']:''; <BR>$upload_file_size=isset($_FILES['upload_file']['size'])?$_FILES['upload_file']['size']:''; <BR>if($upload_file){ <BR> $file_size_max = 1000*1000*200;// 200M限制文件上传最大容量(bytes) <BR> if (!is_dir($store_dir)) { <BR> mkdir($store_dir,0777,true); <BR> } <BR> $accept_overwrite = 1;//是否允许覆盖相同文件 <BR> // 检查文件大小 <BR> if ($upload_file_size > $file_size_max) { <BR> echo "对不起,你的文件容量大于规定"; <BR> exit; <BR> } <BR> // 检查读写文件 <BR> if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) { <BR> echo "存在相同文件名的文件"; <BR> exit; <BR> } <BR> //复制文件到指定目录 <BR> if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) { <BR> echo "复制文件失败"; <BR> exit; <BR> } <BR>} <BR>if (isset($_FILES['upload_file'])) { <BR> echo "<p>你上传了文件:"; <BR> echo isset($_FILES['upload_file']['name'])?$_FILES['upload_file']['name']:''; <BR> echo "<br>"; <BR> //客户端机器文件的原名称。 <br><br> echo "文件的 MIME 类型为:"; <BR> echo isset($_FILES['upload_file']['type'])?$_FILES['upload_file']['type']:''; <BR> //文件的 MIME 类型,需要浏览器提供该信息的支持,例如“image/gif”。 <BR> echo "<br>"; <br><br> echo "上传文件大小:"; <BR> echo isset($_FILES['upload_file']['size'])?$_FILES['upload_file']['size']:''; <BR> //已上传文件的大小,单位为字节。 <BR> echo "<br>"; <br><br> echo "文件上传后被临时储存为:"; <BR> echo isset($_FILES['upload_file']['tmp_name'])?$_FILES['upload_file']['tmp_name']:''; <BR> //文件被上传后在服务端储存的临时文件名。 <BR> $erroe = isset($_FILES['upload_file']['error'])?$_FILES['upload_file']['error']:''; <BR> switch($erroe){ <BR> case 0: <BR> echo "上传成功"; break; <BR> case 1: <BR> echo "上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值."; break; <BR> case 2: <BR> echo "上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。"; break; <BR> case 3: <BR> echo "文件只有部分被上传"; break; <BR> case 4: <BR> echo "没有文件被上传"; break; <BR> case 6: <BR> echo "没有缓存目录"; break; <BR> case 7: <BR> echo "上传目录不可读"; break; <BR> case 8: <BR> echo "上传停止"; break; <BR> default : <BR> echo "没有选择上传文件"; break; <BR> } <BR> echo "<script language=JavaScript>location.replace(location.href);</script>"; <BR>} <BR>?> <BR> <BR> <BR>