ホームページ  >  記事  >  バックエンド開発  >  非表示の iframe は更新せずにファイルをアップロードします

非表示の iframe は更新せずにファイルをアップロードします

WBOY
WBOYオリジナル
2016-06-13 12:28:44764ブラウズ

iframe を非表示にして更新せずにファイルをアップロードする

まず、ajax ではファイルをアップロードできないため、しばらく誤解されましたが、今夜は眠れなかったので、指示に従って更新せずにファイルをアップロードしました

。 >

実際、原理は非常に単純です。 シンプル






一般的な

タグと比較すると、ターゲット属性が 1 つだけあります。タブ ページを開いてデータを送信する場所を指定します。

この属性が設定されていない場合、アクション内の URL はリダイレクトされ、通常どおりこのページで開かれます。

そして、iframe の name 値、つまり「upload」に設定すると、CSS が非表示に設定されているため、iframe で開かれます。 display:none を削除すると、サーバーから返された情報も表示されます。

あなたが主催したクラスも投稿してください。

非表示の iframe は更新せずにファイルをアップロードします
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>   }
}
非表示の iframe は更新せずにファイルをアップロードします

呼び出し例:

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。