<!doctype?html>
<html>
<head>
<meta?charset="utf-8">
<title>無標(biāo)題文檔</title>
</head>
<body>
<form?action="doAction.php"?method="post"?enctype="multipart/form-data">
<input?type="hidden"?name="MAX_FILE_SIZE"?value="10000000000">
上傳項(xiàng)目文件:
<input?type="file"?name="myFile"?id="File"?/><br/>
<input?type="submit"?value="上傳"/>???
</body>
</html>
/*DOACTION.PHP*/
<?php
header('content-type:text/html;charset=utf-8');
print_r($_FILES);
$file_name=$_FILES['myFile']['name'];
$file_type=$_FILES['myFile']['type'];
$file_tmpname=$_FILES['myFile']['tmp_name'];
$file_size=$_FILES['myFile']['size'];
$file_error=$_FILES['myFile']['error'];
$maxsize=3145728;//限制上傳最大的字節(jié)數(shù)
$allowed_file_type=array('doc','docx','wps','pdf');
$flag=true;//檢測上傳文件是否符合要求的返回值
//move_uploaded_file($file_tmpname,"php/".$file_name);
//copy($file_tmpname,"php/".$file_name);
if($file_error==0)
{
if($file_size>$maxsize)
{exit('上傳文件過大,請上傳不大于30M的文件。');}
?????$ext=pathinfo($file_tmpname,PATHINFO_EXTENSION);
?????if(!in_array($ext,$allowed_file_type))
?????{exit("文件的類型不符!");}
????
?????if(!is_uploaded_file($file_tmpname))
?????{exit("文件不是通過HTTP?POST方式上傳上來的");}
?//確保文件名不重復(fù)
?$uniName=md5(uniqid(microtime(true),ture)).'.'.$ext;
?//設(shè)置上傳文件存儲目錄
?$path='upload';
?$dst=$path.'/'.$uniName;
?
?????if(@move_uploaded_file($file_tmpname,$dst))
?????{echo"文件上傳成功";}
?????else
?????{echo"文件上傳失敗";}
????????
}
else
{
switch($file_error){
case?1:
?????echo"BEYOND?THE?MAXSIZE?OF?ALLOWED?FILE?SETTING";break;
????case?2:
?????echo"超過表單MAX_FILE_SIZE限制大小";break;
case?3:
?????echo"文件被部分上傳";break;
case?4: ?
?????echo"沒有選擇上傳文件" ?;break;
????case?6:
?????echo"沒有找到臨時目錄";break;
case?8:
?????echo"系統(tǒng)錯誤";break;
}
}
?>
2016-05-18
PATHINFO($file_name,PATHINFO_EXTNSION),你改成這個實(shí)施