function upfile($filename,$type,$path) { $tempfile=$_files[$filename];//接收上傳的臨時檔案 //有沒有上傳成功 if($error=$tempfile["error"]) { switch($error){ case 1:$errorstr="上傳的檔案超過了2m請返回檢查。";break; case 2:$errorstr="上傳檔案的大小超過了 html 表單中限定值8m";break; case 3:$errorstr="檔案只有部分被上傳";break; case 4:$errorstr="沒有檔案被上傳";break; case 6:$errorstr="找不到臨時檔案夾";break; case 7:$errorstr="檔案寫入失敗";break; } showmsg($errorstr); } //檔案類型是否在允許的範圍內 $filename=$tempfile["name"];//取上傳原檔案名稱 $tmparr=explode(".",$filename); $extname=strtolower($tmparr[count($tmparr)-1]);//取出原副檔名並轉為小寫字母 if(!in_array($extname,$type)) showmsg("上傳的檔案類型不允許,請返回檢查."); //改檔案名稱 $newfile="zy".time().rand(100,1000).".".$extname;//構成新的檔案名稱 //路徑 $path.=$newfile; //重名判斷 if(file_exists($path)){ $newfile="zy".time().rand(100,1000).".".$extname;//構成新的檔案名稱 $path.=$newfile; } if(!move_uploaded_file($tempfile['tmp_name'],$path))showmsg("檔案移動失敗。"); return $newfile; } |