php 文件上传代码,限制只能上传jpg格式文件,也可以自行添加其它扩展名的文件。
<?php /* * 图片上传类 仅限JPG格式图片 * edit by www.jbxue.com at 2013-07-11 */
class uploadFile { var $inputName; //input名称 var $fileName; //文件命名 var $fileProperty; //文件属性 var $fileSize=2097152; //文件大小限制,2M var $filePath="upload/"; //文件存储路径 function uploadFile($inputName){ $this->inputName=$inputName; $this->getName(); //取得新的名称 $this->fileSave(); } //随机名称 private function getName(){ $this->fileName=date("YmdHms").rand(0,9).$this->getProperty(); } //文件属性,返回后辍名 private function getProperty(){ if($_FILES[$this->inputName]["type"]=="image/pjpeg"||$_FILES[$this->inputName]["type"]=="image/jpeg"){ return ".jpg"; }else{ exit("文件格式不对"); } } //文件存储 private function fileSave(){ if($_FILES[$this->inputName]["size"]>$this->fileSize){ exit("文件太大,最大限制为".$this->fileSize."字节"); } if(!file_exists($this->filePath)){ mkdir($this->filePath); //如果文件存储目录不存在,则建立; } move_uploaded_file($_FILES[$this->inputName]["tmp_name"], $this->filePath.$this->fileName); } } if($_GET['action']=="fileSave"){ $f=new uploadFile("file"); echo '<input name="textfield" type="text" size="30" value="'.$f->filePath.$f->fileName.'" /> 上传成功! <a href="'.$f->filePath.$f->fileName.'">浏览</a>'; }else{ echo '<form action="?action=fileSave" method="post" enctype="multipart/form-data" name="form1" id="form1"> <input type="file" name="file" size="30" /> <input type="submit" name="Submit" value="提交" /> </form>'; } ?>