电脑安全

您当前的位置:主页 > 电脑安全 >

php 支持多文件上传-网络编程

来源:[db:来源]标题:   上传    编辑:电脑技术全能网 时间:2019-09-22 12:31

原标题:php 支持多文件上传-网络编程
   <?php/***TTR上传类*2007-09-22*[url=http://www.gx3.cn/]http://www.Gx3.cn[/url]*QQ:252319874**/classTTRUploadextendsError{constfilesize=81200000;private$uploadpath="uploadfile/";private$savepath=null;private$uploadfilename=null;//单个文件为文件名,批量文件为xxxx|xxxx格局,请留神private$ext=array("jpg","gif","png");private$error=null;private$file=null;private$uploadtype=null;private$filename=null;//结构函数,$type:ONE单个上传ANY批量上传;publicfunction__construct($file,$type="ONE"){if($type!="ONE"&&$type!="ANY"){echo"<scriptlanguage='javascript'>alert('初始化请抉择ONE或许ANY')</script>";exit;}$this->uploadtype=$type;$this->file=$file;}privatefunctioncreateFileName(){return$this->filename="TTR_".time().$this->getRandomN(4);}privatefunctiongetUploadPath(){if(substr($this->uploadpath,-1,1)!="/"){$this->savepath=$this->uploadpath."/".date("Ym");}else{$this->savepath=$this->uploadpath.date("Ym");}$this->savepath=$this->getFolder($this->savepath);returntrue;}privatefunctiongetFileExt($tempfilename){returnend(explode(".",$tempfilename));}privatefunctiongetExt(){if(in_array(strtolower($this->getFileExt($tempfilename)),$this->ext)){returntrue;}else{returnfalse;}}privatefunctiongetFolder($folder){if(!is_dir($folder)){mkdir($folder);}return$folder."/";}publicfunctionupload(){if($this->uploadtype=="ONE"){if($this->getExt($this->file["type"])){parent::errorExt();}elseif($this->file["size"]>self::filesize){parent::errorFileSize();}elseif(!$this->getUploadPath()){parent::errorUploadPath();}else{$filenametemp=$this->createFileName();$filename=$this->savepath.$filenametemp.".".$this->getFileExt($this->file["name"]);if(move_uploaded_file($this->file["tmp_name"],$filename)){$this->uploadfilename=$filenametemp;parent::okMoved();}else{parent::errorMoveUpload();}}}elseif($this->uploadtype=="ANY"){for($i=0;$i<count($this->file);$i++){if($this->getExt($this->file[$i]["type"])){parent::errorExt();}elseif($this->file[$i]["size"]>self::filesize){parent::errorFileSize();}elseif(!$this->getUploadPath()){parent::errorUploadPath();}else{$filenametemp=$this->createFileName();$filename=$this->savepath.$filenametemp.".".$this->getFileExt($this->file[$i]["name"]);if(move_uploaded_file($this->file[$i]["tmp_name"],$filename)){$str.=$filenametemp."|";}else{parent::errorMoveUpload();}}}$this->uploadfilename=substr($str,0,strlen($str)-1);parent::okMoved();}}publicfunctiongetUploadFileName(){return$this->uploadfilename;}publicfunctionsetUploadPath($path){$this->uploadpath=$path;}privatefunctiongetRandomN($n){if($n<1||$n>10)return"";$ary_num=array(0,1,2,3,4,5,6,7,8,9);$return="";for($i=0;$i<$n;$i++){$randn=rand(0,9-$i);$return.=$ary_num[$randn];$ary_num[$randn]=$ary_num[9-$i];}return$return;}publicfunction__destruct(){$this->uploadfilename=null;$this->uploadtype=null;$this->file=null;$this->savepath=null;}}classError{publicstaticfunctionerrorFileSize(){echo"超越最大上传限度";}publicstaticfunctionerrorExt(){echo"此类文件不同意上传";}publicstaticfunctionerrorUploadPath(){echo"上传门路不准确";}publicstaticfunctionerrorMoveUpload(){echo"上传失利";}publicstaticfunctionokMoved(){echo"上传胜利!";}publicstaticfunctionokArrayMoved(){echo"上传胜利!";}}实例利用:<?phprequire_once("include/upload.class.php");if($_POST["button"]){//print_r($_FILES);//多个上传$upload=newTTRUpload(array($_FILES["file1"],$_FILES["file2"],$_FILES["file3"],$_FILES["file4"]),"ANY");//单个上传//$upload=newTTRUpload($_FILES["file1"]);$upload->upload();echo$upload->getUploadFileName();}?><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>UntitledDocument</title></head><body><formaction=""method="post"enctype="multipart/form-data"name="form1"id="form1"><inputtype="file"name="file1"id="file1"/><br/><inputtype="file"name="file2"id="file2"/><br/><inputtype="file"name="file3"id="file3"/><br/><inputtype="file"name="file4"id="file4"/><br/><inputtype="submit"name="button"id="button"value="Submit"/></form></body></html>

上一篇:php扩展-网络编程

下一篇:没有了