Bootstrap+PHP實現多圖上傳


插件及源代碼可以在這里下載 http://www.jq22.com/jquery-info5231
下面是根據下載的demo進行補充:
使用bootstrap界面美觀,可預覽,可拖拽上傳,可配合ajax異步或同步上傳,下面是效果圖:

 

前端代碼:fileinput.html

<!DOCTYPE html>
<!-- release v4.1.8, copyright 2014 - 2015 Kartik Visweswaran -->
<html lang="en">
    <head>
        <meta charset="UTF-8"/>
        <title>bootstrap多圖上傳</title>

        <link href="/public/index/fileinput/css/bootstrap.min.css" rel="stylesheet">
        <link href="/public/index/fileinput/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />

        <script src="/public/index/fileinput/js/jquery-2.0.3.min.js"></script>
        <script src="/public/index/fileinput/js/fileinput.js" type="text/javascript"></script>
        <script src="/public/index/fileinput/js/bootstrap.min.js" type="text/javascript"></script>
        <!-- 中文化 -->
        <script src="/public/index/fileinput/js/fileinput_locale_zh.js" type="text/javascript"></script>

    </head>
    <body>
        <div class="container kv-main">
            
            <br>
            <form enctype="multipart/form-data">
                
                <div class="form-group">
                    <!-- 初始化插件 -->
                    <input id="file-1" type="file" multiple class="file" data-overwrite-initial="false" data-min-file-count="2" name="images">
                </div>
                
            </form>
        </div>
    </body>
    <script>

    // 初始化filleinput控件  第一次初始化
    function initFileInput(ctrlName, uploadUrl){
        var control = $('#'+ctrlName);
        control.fileinput({
            language: 'zh', //設置語言
            uploadUrl:uploadUrl,    //上傳的地址
            allowedFileExtensions:['jpg','png'],    //接收的文件后綴
            showUpload:true,    //是否顯示上傳按鈕
            showCaption:false,    //是否顯示標題
            maxFileSize: 1000,    //圖片最大尺寸kb 為0不限制
            maxFilesNum: 3,        //最多上傳圖片
            overwriteInitial: false,//不覆蓋已上傳的圖片
            browseClass: "btn btn-info", //按鈕樣式 
            dropZoneEnabled: true,//是否顯示拖拽區域
            previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
            msgFilesTooMany: "選擇上傳的文件數量({n}) 超過允許的最大數值{m}!",
        });
    }

    //初始化fileinput控件,第一次初始化 (控件id,上傳地址)
    initFileInput("file-1", "uploadImg");

   // 監聽事件
    $("#file-1").on("fileuploaded", function (event, data, previewId, index) {
        // 上傳地址
        console.log(data);
    });
    </script>
</html>

后台代碼:

    /*
    * bootst多圖上傳
    */
    public function fileinput()
    {
        
        return $this->fetch();
    }

    public function uploadImg()
    {
        // var_dump($_FILES);
        // 獲取表單上傳文件 
        $file = request()->file('images');
        // 移動到框架應用根目錄/public/uploads/img 目錄下
        $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads/img');
        
        if($info){
            // 成功上傳后 獲取上傳信息
            $data['response'] = $info->getSaveName();
            return json($data);
            
            //圖片上傳成功,以下可對數據庫操作
            // ......
            
        }else{
            // 上傳失敗獲取錯誤信息
            echo $file->getError();
        }
        
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM