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 和 COM
Oct 09 PHP
PHP is_dir() 判断给定文件名是否是一个目录
May 10 PHP
php中var_export与var_dump的区别分析
Aug 21 PHP
修改PHP的memory_limit限制的方法分享
Feb 21 PHP
解析Win7 XAMPP apache无法启动的问题
Jun 26 PHP
PHP+Ajax实时自动检测是否联网的方法
Jul 01 PHP
适用于初学者的简易PHP文件上传类
Oct 29 PHP
php编程每天必学之表单验证
Mar 01 PHP
php源码之将图片转化为data/base64数据流实例详解
Nov 27 PHP
PHP实现负载均衡session共享redis缓存操作示例
Aug 22 PHP
PDO::query讲解
Jan 29 PHP
PHP文件打开关闭及读写操作示例解析
Aug 06 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中的时间显示
2007/01/18 PHP
Zend Studio 无法启动的问题解决方法
2008/12/04 PHP
php网站被挂木马后的修复方法总结
2014/11/06 PHP
PHP判断网络文件是否存在的方法
2015/03/12 PHP
PHP开发中AJAX技术的简单应用
2015/12/11 PHP
php连接微软MSSQL(sql server)完全攻略
2016/11/27 PHP
php中通过eval实现字符串格式的计算公式
2017/03/18 PHP
javascript中的变量作用域以及变量提升详细介绍
2013/10/24 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
JS+DIV+CSS排版布局实现美观的选项卡效果
2015/10/10 Javascript
如何防止JavaScript自动插入分号
2015/11/05 Javascript
js闭包引起的事件注册问题介绍
2016/03/29 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
2016/09/19 Javascript
用Vue.js实现监听属性的变化
2016/11/17 Javascript
Redux 和 Mobx的选择问题:让你不再困惑!
2017/09/18 Javascript
JS与CSS3实现图片响应鼠标移动放大效果示例
2018/05/04 Javascript
微信小程序当前时间时段选择器插件使用方法详解
2018/12/28 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
jQuery实现全选、反选和不选功能的方法详解
2019/12/04 jQuery
js实现简易拖拽的示例
2020/10/26 Javascript
[49:31]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第二场 1月29日
2021/03/11 DOTA
深入理解Django自定义信号(signals)
2018/10/15 Python
Python中fnmatch模块的使用详情
2018/11/30 Python
详解如何在cmd命令窗口中搭建简单的python开发环境
2019/08/29 Python
Python 3.6 中使用pdfminer解析pdf文件的实现
2019/09/25 Python
scrapy框架携带cookie访问淘宝购物车功能的实现代码
2020/07/07 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
梵蒂冈和罗马卡:Omnia Card Pass
2018/02/10 全球购物
国际奢侈品品牌童装购物网站:Designer Childrenswear
2019/05/08 全球购物
英语系毕业生求职信
2014/07/13 职场文书
后勤个人工作总结
2015/02/28 职场文书
2015年业务员工作总结范文
2015/04/07 职场文书
信用卡催款律师函
2015/05/27 职场文书
MySQL空间数据存储及函数
2021/09/25 MySQL