ThinkPHP は AjaxFileUploader を組み合わせて更新不要のファイル アップロードを実現します。_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:15:46
オリジナル
1032 人が閲覧しました

ThinkPHPとAjaxFileUploaderを組み合わせることで、更新せずにファイルをアップロードする方法を実現します

この記事の例では、ThinkPHP と AjaxFileUploader を組み合わせて使用​​して、更新のないファイルのアップロードを実現する方法について説明します。参考のためにみんなで共有してください。具体的な実装方法は以下のように分析されます:

まず、AjaxFileUploader プラグインは、jquery に基づいたプラグインです。このプラグインを使用してアップロードする場合、互換性の問題を心配する必要はありません。その互換性は、すべての主流ブラウザと互換性があると言えます。AjaxFileUploader+thinkphp を実装したファイルのアップロードの例を紹介します。

ThinkPHP フレームワークで AjaxFileUploader プラグインを使用して Ajax ファイル アップロードを実装し、複数のファイル形式をサポートし、ページを更新せずにアップロードします。

Lib/Action/ ディレクトリに upAction.class.php ファイルを作成します。コードは次のとおりです。

コードをコピーします コードは次のとおりです:
クラス upAction は BaseAction{
を拡張します パブリック関数インデックス(){
    $this->display();
}
 
/*
*@文件上传
*@author FineYi
*@日付 2013-01-23
*/
パブリック関数 upLoadFile(){
    $error = "";
    $msg = "";
    $fileElementName = 'アップロードするファイル';
    if(!empty($_FILES[$fileElementName]['error'])){
        switch($_FILES[$fileElementName]['error']){
            ケース「1」:
                $error = 'アップロードされたファイルはphp.iniのupload_max_filesizeディレクティブを超えています';
                休憩;
            ケース「2」:
                $error = 'アップロードされたファイルは、HTML フォームで指定された MAX_FILE_SIZE ディレクティブを超えています';
                休憩;
            ケース「3」:
                $error = 'アップロードされたファイルは部分的にのみアップロードされました';
                休憩;
            ケース「4」:
                $error = 'ファイルはアップロードされませんでした。';
                休憩;
 
            ケース「6」:
                $error = '一時フォルダーが見つかりません';
                休憩;
            ケース「7」:
                $error = 'ファイルをディスクに書き込めませんでした';
                休憩;
            ケース「8」:
                $error = '拡張機能によりファイルのアップロードが停止されました';
                休憩;
            ケース「999」:
            デフォルト:
                $error = '利用可能なエラー コードはありません';
        }
    }elseif(empty($_FILES['fileToUpload']['tmp_name']) || $_FILES['fileToUpload']['tmp_name'] == 'none'){
        $error = 'ファイルはアップロードされませんでした。';
    }その他{
            $re = $this->up();
            if(!$re){
                $error = 'ファイルのアップに失敗しました';
            }
            $msg = $re['保存名'];    //文件名
            $path = '/upload/bizcoop/'.$msg;    //文件路径
            $size = $re['サイズ'];    //文章大小
    }
    echo json_encode(array('error'=>$error,'msg'=>$msg,'path'=>$path,'size'=>$size));exit;
}
 
プライベート関数 up(){
    import('@.Org.UploadFile');// 上传类UploadFile.class.phpファイル到Lib/Org文件夹下
    $upload=new UploadFile();
 
    $upload->maxSize='-1';//默认は-1,無制限上传大
$upload->savePath= ICTSPACE_DIST_ROOT_PATH.'/www/upload/bizcoop/';// パスを保存します
$upload->saveRule=uniqid;//アップロードされたファイルのファイル名保存ルール
$upload->uploadReplace=true; //同名のファイルが存在する場合、上書きするかどうか
$upload->allowExts=array('jpg','jpeg','png','gif') //アップロードできるファイルの種類
If($upload->upload()){
$info=$upload->getUploadFileInfo();
return $info[0];
}その他{
false を返す;
終了します;
}
}
}
?>

/Tpl/default/Up/ ディレクトリにindex.tpl ファイルを作成します。コードは次のとおりです:

コードをコピーします コードは次のとおりです:

Ajax ファイルアップロードのデモ










<みんな>







<みんな>






ThinkPHP ファイル アップロード クラスを /Lib/Org/ ディレクトリに置くだけです。公式 Web サイトからダウンロードする必要があるプラグインがいくつかあります。

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/902782.html技術記事 ThinkPHP と AjaxFileUploader を組み合わせて、リフレッシュ不要のファイル アップロードを実現する この記事では、ThinkPHP と AjaxFileUploader を組み合わせて、リフレッシュ不要のファイル アップロードを実現する例について説明します。みんなのためにみんなでシェアしましょう...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート

アップロードされた添付ファイル: