首页  >  文章  >  php教程  >  隐藏iframe无刷新上传文件,iframe刷新上传文件

隐藏iframe无刷新上传文件,iframe刷新上传文件

WBOY
WBOY原创
2016-06-13 08:45:18940浏览

隐藏iframe无刷新上传文件,iframe刷新上传文件

首先ajax不能上传文件,这误导了我有段时间,今晚睡不着就照着说明做了个无刷新上传文件

其实原理很简单

<form enctype="multipart/form-data" method="POST" target="upload" action="http://localhost/class.upload.php" ><br />          <input type="file" name="uploadfile" /><br />          <input type="submit" /> <br /></form><br /><iframe name="upload"></span>
<pre class="code">class upload<br />{<br />   public $_file;<br /><br />   public function __construct( $name =null)<br />   {<br />       if(is_null($name) || !isset($_FILES[$name]))<br />            $name = key($_FILES);<br />            <br />       if(!isset($_FILES[$name]))<br />           throw new Exception("并没有文件上传");<br />           <br />       $this->_file  = $_FILES[$name];<br />       <br />       if(!is_uploaded_file($this->_file['tmp_name']))<br />            throw new Exception("异常情况");<br />       if($this->_file['error'] !== 0)<br />            throw new Exception("错误代码:".$this->_file['error']);     <br />   }<br />   public function moveTo( $new_dir)<br />   {<br />       $real_dir = $this->checkDir($new_dir);<br />       return move_uploaded_file($this->_file['tmp_name'], $real_dir.'/'.$this->_file['name']);<br />   }<br />   private function checkDir($dir)<br />   {<br />       $real_dir = realpath($dir);<br />       if($real_dir === false)<br />           throw new Exception("给定目录{$dir}不存在");<br />       if(!is_writable($real_dir))<br />           throw new Exception("给定目录{$dir}不可写");<br />       return $real_dir;<br />   }
}

调用示例:

$inputName =  'uploadfile'; <br /> // 即<input type=&ldquo;file" name="uploadfile" /> 中的name值,不填也行<br />$upload = new upload($inputName);<br />$new_dir = "/www";  // 将文件移动到的路径<br />$upload->moveTo($new_dir);

 

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn