iframe完毕无刷新文件上传,iframe达成遮掩无刷新

作者: 金沙澳门官网  发布:2019-09-26

率先ajax无法上传文件,那误导了本身有段日子,今晚睡不着就照着表达做了个无刷新上传文件

先是ajax不可能上传文件,那误导了自己有段时间,明儿深夜睡不着就照着评释做了个无刷新上传文件

事实上原理很简短

实则原理很轻巧

 代码如下

复制代码 代码如下:

<form enctype="multipart/form-data" method="POST" target="upload" action=")" >
          <input type="file" name="uploadfile" />
          <input type="submit" />
</form>
<iframe name="upload" style="display:none"></iframe>

<form enctype="multipart/form-data" method="POST" target="upload" action="" >
<input type="file" name="uploadfile" />
<input type="submit" />
</form>
<iframe name="upload" style="display:none"></iframe>

和一般的<form>标签相比很多了三个target属性罢了,用于钦赐标签页在哪儿展开以及交付数据。

和一般的<form>标签比比较多了一个target属性罢了,用于钦定标签页在哪儿打开以及提交数据。

一经未有安装该属性,就能够像常常同样在本页重定向展开action中的url。

假设未有安装该属性,就能够像平日一样在本页重定向打开action中的url。

而只要设置为iframe的name值,即"upload"的话,就能够在该iframe内打开,因为CSS设置为隐藏,因此不会有其它动静。若将display:none去掉,还寻访到服务器的归来消息。

而只要设置为iframe的name值,即"upload"的话,就能够在该iframe内打开,因为CSS设置为隐藏,由此不会有别的情状。若将display:none去掉,还有可能会看到服务器的回到音信。

除此以外贴一下融洽组织的类。

除此以外贴一下要好团队的类。

 代码如下

复制代码 代码如下:

class upload
{
   public $_file;

class upload
{
public $_file;

   public function __construct( $name =null)
   {
       if(is_null($name) || !isset($_FILES[$name]))
            $name = key($_FILES);
           
       if(!isset($_FILES[$name]))
           throw new Exception("并没有文件上传");
          
       $this->_file  = $_FILES[$name];
      
       if(!is_uploaded_file($this->_file['tmp_name']))
            throw new Exception("相当境况");
       if($this->_file['error'] !== 0)
            throw new Exception("错误代码:".$this->_file['error']);    
   }
   public function moveTo( $new_dir)
   {
       $real_dir = $this->checkDir($new_dir);
       return move_uploaded_file($this->_file['tmp_name'], $real_dir.'/'.$this->_file['name']);
   }
   private function checkDir($dir)
   {
       $real_dir = realpath($dir);
       if($real_dir === false)
           throw new Exception("给定目录{$dir}荒诞不经");
       if(!is_writable($real_dir))
           throw new Exception("给定目录{$dir}不可写");
       return $real_dir;
   }

public function __construct( $name =null)
{
if(is_null($name) || !isset($_FILES[$name]))
$name = key($_FILES);

}

if(!isset($_FILES[$name]))
throw new Exception("并从未公文上传");

调用示例:

$this->_file = $_FILES[$name];

 代码如下

if(!is_uploaded_file($this->_file['tmp_name']))
throw new Exception("十分处境");
if($this->_file['error'] !== 0)
throw new Exception("错误代码:".$this->_file['error']);
}
public function moveTo( $new_dir)
{
$real_dir = $this->checkDir($new_dir);
return move_uploaded_file($this->_file['tmp_name'], $real_dir.'/'.$this->_file['name']);
}
private function checkDir($dir)
{
$real_dir = realpath($dir);
if($real_dir === false)
throw new Exception("给定目录{$dir}不设有");
if(!is_writable($real_dir))
throw new Exception("给定目录{$dir}不可写");
return $real_dir;
}}

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

调用示例:

复制代码 代码如下:

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

你只怕感兴趣的篇章:

  • php+ajax无刷新上传图片的兑现格局
  • PHP Ajax达成无刷新附属类小部件上传
  • php+html5兑现无刷新图片上传教程
  • php+ajax无刷新上传图片实例代码
  • ThinkPHP结合AjaxFileUploader实现无刷新文件上传的法子
  • 行使PHP和HTML5 FormData达成无刷新文件上传教程
  • php利用iframe实现无刷新文件上传功能的代码
  • PHP无刷新上传文件落到实处代码
  • php ajax无刷新上传图片实例代码
  • PHP+JavaScript实现无刷新上传图片

本文由金沙澳门官网送注册58发布于金沙澳门官网,转载请注明出处:iframe完毕无刷新文件上传,iframe达成遮掩无刷新

关键词: