zoukankan      html  css  js  c++  java
  • 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();
            }
            
        }
  • 相关阅读:
    《vi和vim》 学习手记(1)
    2013年1月第1个周末
    Oracle基础知识Oracle不同的启动关闭方式
    2013年1月第一个周末
    《vi和vim》 学习手记(2)
    Oracle基础知识数据迁移
    MySQL 显示表字段及注释等信息
    什么是UCenter Home、Discuz!、SupeSite、ECShop和SupeV 这些都是什么?
    mysql远程连接对用户的测试(吴龙波)
    MySQL与SQL的触发器的不同写法
  • 原文地址:https://www.cnblogs.com/zxf100/p/8745698.html
Copyright © 2011-2022 走看看