Bootstrap+PHP实现多图上传功能实例详解


Posted in PHP onApril 08, 2018

使用bootstrap界面美观,可预览,可拖拽上传,可配合ajax异步或同步上传,下面是效果图:

Bootstrap+PHP实现多图上传功能实例详解

Bootstrap+PHP实现多图上传功能实例详解

前端代码: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="external nofollow" rel="stylesheet">
  <link href="/public/index/fileinput/css/fileinput.css" rel="external nofollow" 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();
  }
 }

总结

以上所述是小编给大家介绍的Bootstrap+PHP实现多图上传功能实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP中上传大体积文件时需要的设置
Oct 09 PHP
无数据库的详细域名查询程序PHP版(2)
Oct 09 PHP
删除html标签得到纯文本可处理嵌套的标签
Apr 28 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
Nov 24 PHP
ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
Feb 12 PHP
十大使用PHP框架的理由
Sep 26 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
Mar 17 PHP
phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法
Mar 30 PHP
thinkphp的dump函数无输出实例代码
Nov 15 PHP
PHP使用curl函数发送Post请求的注意事项
Nov 26 PHP
Laravel5.* 打印出执行的sql语句的方法
Jul 24 PHP
php屏蔽错误及提示的方法
May 10 PHP
PHP实现的获取文件mimes类型工具类示例
Apr 08 #PHP
PHP面向对象之里氏替换原则简单示例
Apr 08 #PHP
PHP面向对象五大原则之依赖倒置原则(DIP)详解
Apr 08 #PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
Apr 08 #PHP
PHP实现微信红包金额拆分试玩的算法示例
Apr 07 #PHP
PHP面向对象五大原则之接口隔离原则(ISP)详解
Apr 04 #PHP
PHP面向对象五大原则之开放-封闭原则(OCP)详解
Apr 04 #PHP
You might like
php去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
YII框架中使用memcache的方法详解
2017/08/02 PHP
基于jquery可配置循环左右滚动例子
2011/09/09 Javascript
JavaScript基础篇之变量作用域、传值、传址的简单介绍与实例
2013/06/29 Javascript
生成二维码方法汇总
2014/12/26 Javascript
Javascript基础教程之argument 详解
2015/01/18 Javascript
JavaScript实现常用二级省市级联下拉列表的方法
2015/03/25 Javascript
详解JavaScript的策略模式编程
2015/06/24 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
AngularJS 入门教程之HTML DOM实例详解
2016/07/28 Javascript
Angular之指令Directive用法详解
2017/03/01 Javascript
微信JS SDK接入的几点注意事项(必看篇)
2017/06/23 Javascript
JS扩展String.prototype.format字符串拼接的功能
2018/03/09 Javascript
解决Antd Table组件表头不对齐的问题
2020/10/27 Javascript
详解 javascript对象创建模式
2020/10/30 Javascript
关于Js中new操作符的作用详解
2021/02/21 Javascript
[00:12]2018DOTA2亚洲邀请赛SOLO赛 MidOne是否中单第一人?
2018/04/05 DOTA
pycharm 使用心得(七)一些实用功能介绍
2014/06/06 Python
Python使用progressbar模块实现的显示进度条功能
2018/05/31 Python
python实现的MySQL增删改查操作实例小结
2018/12/19 Python
Python3实现计算两个数组的交集算法示例
2019/04/03 Python
使用gunicorn部署django项目的问题
2020/12/30 Python
详解Canvas事件绑定
2018/06/27 HTML / CSS
澳大利亚百货公司:David Jones
2018/02/08 全球购物
瑜伽国际:Yoga International
2018/04/18 全球购物
德国足球商店:OUTFITTER
2019/05/06 全球购物
介绍一下Python下range()函数的用法
2013/11/07 面试题
应聘美工求职信
2013/11/07 职场文书
电子商务专业自我鉴定
2013/12/18 职场文书
房屋租赁协议书范本
2014/04/10 职场文书
小学重阳节活动总结
2015/03/24 职场文书
2016党员读书思廉心得体会
2016/01/23 职场文书
个人道歉信大全
2019/04/11 职场文书
导游词之峨眉山
2019/12/16 职场文书
python实现大文本文件分割成多个小文件
2021/04/20 Python
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技