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模板之Phpbean的目录结构
Jan 10 PHP
创建数据库php代码 用PHP写出自己的BLOG系统
Apr 12 PHP
用php制作简单分页(从数据库读取记录)的方法详解
May 04 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(三)
Jun 23 PHP
php操作xml入门之xml标签的属性分析
Jan 23 PHP
PHP预定义变量9大超全局数组用法详解
Apr 23 PHP
使用ltrace工具跟踪PHP库函数调用的方法
Apr 25 PHP
PHP针对字符串开头和结尾的判断方法
Jul 11 PHP
PHP封装的验证码工具类定义与用法示例
Aug 22 PHP
Laravel中10个有用的用法小结
May 06 PHP
WordPress免插件实现面包屑导航的示例代码
Aug 20 PHP
PHP使用非对称加密算法RSA
Apr 21 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中array_slice函数用法实例详解
2014/11/25 PHP
php操作MongoDB类实例
2015/06/17 PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
2016/03/23 PHP
Yii2.0预定义的别名功能小结
2016/07/04 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
2017/02/17 PHP
Thinkphp框架+Layui实现图片/文件上传功能分析
2020/02/07 PHP
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
用js做一个小游戏平台 (一)
2009/12/29 Javascript
js 3种归并操作的实例代码
2013/10/30 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
thinkphp 表名 大小写 窍门
2015/02/01 Javascript
AngularJS 单元测试(二)详解
2016/09/21 Javascript
微信小程序实现滑动删除效果
2017/05/19 Javascript
js 简易版滚动条实例(适用于移动端H5开发)
2017/06/26 Javascript
Vue下滚动到页面底部无限加载数据的示例代码
2018/04/22 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
layui 实现加载动画以及非真实加载进度的方法
2019/09/23 Javascript
在vue中阻止浏览器后退的实例
2019/11/06 Javascript
[01:02]DOTA2辉夜杯决赛日 CDEC.Y对阵VG赛前花絮
2015/12/27 DOTA
[08:47]2018国际邀请赛 OG战队举杯时刻
2018/08/29 DOTA
学习python (2)
2006/10/31 Python
仅用500行Python代码实现一个英文解析器的教程
2015/04/02 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
解决Spyder中图片显示太小的问题
2018/04/27 Python
详解Python requests 超时和重试的方法
2018/12/18 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
2020/09/03 Python
写好自荐信的技巧
2013/11/08 职场文书
生日派对邀请函
2014/01/13 职场文书
本科应届生自荐信
2014/06/29 职场文书
关于保护环境的建议书
2014/08/26 职场文书
销售员试用期自我评价
2014/09/15 职场文书
工商局局长个人对照检查材料思想汇报
2014/09/23 职场文书
预备党员半年考察意见
2015/06/01 职场文书
创业计划书之家政服务
2019/09/18 职场文书
MySQL 角色(role)功能介绍
2021/04/24 MySQL
Python闭包的定义和使用方法
2022/04/11 Python