#1 lijian
class uploadfile{private $savepath=null;//文件存储路径如2011/11/12/xxx.xx
private $filesize=null;//文件上传最大值设置
private $imgtype="jpg,png,gif,bmp";//上传图片可生成微缩图片类型设置
private $filetype=null;
private $fileinput=null;//文件上传域名字设置
private $filedir=null;//文件路径如2011/11/12/
private $saveplace=null;//文件存储文件夹
private $path=null;
public function __construct(){
$data=spext("fupload");
$this->savepath=$data["savepath"];
$this->imgtype=$data["imgtype"];
$this->filesizes=$data["filesizes"];
$this->filetype=$data["filetype"];
$this->fileinput=$data["fileinput"];
$this->filedir=$data["filedir"];
}//
public function set_filesize($size)
{
$this->filesizes=$size;
}//动态设置文件上传最大值
public function set_filetype($type)
{
$this->filetype=$type;
}//动态设置上传文件类型
public function set_fileinput($name)
{
$this->fileinput=$name;
}
//动态更改文件上传时的文件域名字
public function set_path($path)
{
$this->saveplace=$pathplace;
}
//存储文件文件夹动态设置
public function fileupload($file_input)
{
$inputname=$this->fileinput;
if(strlen($file_input)){
$inputname=$file_input;
}else
{
$err="无文件上传";
$msg=null;
}
$upfile=$_FILES[$inputname];
$ext =strtolower(substr(strrchr($upfile,'.'),1));
if(!empty($upfile["error"]))
{
switch($upfile["error"])
{
case '1':$err = '文件大小超过了php.ini定义的upload_max_filesize值';break;
case '2':$err = '文件大小超过了HTML定义的MAX_FILE_SIZE值';break;
case '3':$err = '文件上传不完全';break;
case '4':$err = '无文件上传';break;
case '6':$err = '缺少临时文件夹';break;
case '7':$err = '写文件失败';break;
case '8':$err = '上传被其它扩展中断';
break;
case '999':
default:$err = '无有效错误代码';
}
}
elseif(empty($upfile["tmp_name"])||$upfile["tmp_name"]=="none")
{
$err='无文件上传'; break;
}
elseif(!in_array($ext,$filetype))
{
$err="文件类型错误,您只可以上传的类型为".$filetype;break;
}
elseif($upfile["size"]>$filesize)
{
$err="您上传文件超过了网站设置的".$filesize;break;
}
else{
if($saveplace)
{
$path1=date("Y");
$path2=date("Y")."\\".date("m");
$path3=date("Y")."\\".date("m")."\\".date(d);
$path4=date("Y")."\\".date("m")."\\".date(d)."\\".$saveplace;
$path=date("Y")."\\".date("m")."\\".date(d)."\\".$saveplace."\\";
if(is_dir($path."\\".$saveplace){
move_uploaded_file($upfile["tmp_name"],$path);
}
else{
mkdir($path1);
mkdir($path2);
mkdir($path3);
mkdir($path4);
}
}
else{
$path1=date("Y");
$path2=date("Y")."\\".date("m");
$path3=date("Y")."\\".date("m")."\\".date(d);
$path=date("Y")."\\".date("m")."\\".date(d)."\\";
if(is_dir($path."\\".$saveplace)
move_uploaded_file($upfile["tmp_name"],$path);
}else{
mkdir($path1);
mkdir($path2);
mkdir($path3);
}
}
2011-11-21 16:52:44