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使用百度天气接口示例
Apr 22 PHP
PHP不用递归遍历目录下所有文件的代码
Jul 04 PHP
php使用CURL伪造IP和来源实例详解
Jan 15 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
Mar 10 PHP
PHP网络操作函数汇总
May 18 PHP
thinkphp3.x连接mysql数据库的方法(具体操作步骤)
May 19 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
Jul 01 PHP
php无限级分类实现方法分析
Oct 19 PHP
php面向对象之反射功能与用法分析
Mar 29 PHP
总结一些PHP中好用但又容易忽略的小知识
Jun 02 PHP
PHP文件后缀不强制为.php方法
Mar 31 PHP
php使用pecl方式安装扩展操作示例
Aug 12 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页面跳转代码 输入网址跳转到你定义的页面
2013/03/28 PHP
smarty模板引擎从配置文件中获取数据的方法
2015/01/22 PHP
PHP实现简单搜歌的方法
2015/07/28 PHP
php简单日历函数
2015/10/28 PHP
php源码 fsockopen获取网页内容实例详解
2016/09/24 PHP
PHP asXML()函数讲解
2019/02/03 PHP
在第一个input框内输入内容.textarea自动得到第一个文件框的值的javascript代码
2007/04/20 Javascript
IE6下JS动态设置图片src地址问题
2010/01/08 Javascript
JS实现self的resend
2010/07/22 Javascript
javascript+xml实现简单图片轮换(只支持IE)
2012/12/23 Javascript
js使用Array.prototype.sort()对数组对象排序的方法
2015/01/28 Javascript
jQuery匹配文档链接并添加class的方法
2015/06/26 Javascript
javascript数据结构之串的概念与用法分析
2017/04/12 Javascript
js实现图片懒加载效果
2017/07/17 Javascript
微信小程序使用audio组件播放音乐功能示例【附源码下载】
2017/12/08 Javascript
jquery radio 动态控制选中失效问题的解决方法
2018/02/28 jQuery
Vue组件中的data必须是一个function的原因浅析
2018/09/03 Javascript
原生JS实现手动轮播图效果实例代码
2018/11/22 Javascript
微信小程序分包加载代码实现方法详解
2019/09/23 Javascript
浅谈vue的第一个commit分析
2020/06/08 Javascript
OpenLayer学习之自定义测量控件
2020/09/28 Javascript
[07:59]2014DOTA2叨叨刀塔 林熊猫称被邀请赛现场盛况震撼
2014/07/21 DOTA
[01:02:53]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第二局
2016/03/06 DOTA
python利用Guetzli批量压缩图片
2017/03/23 Python
Python实现的NN神经网络算法完整示例
2018/06/19 Python
Python框架Flask的基本数据库操作方法分析
2018/07/13 Python
Tensorflow使用支持向量机拟合线性回归
2018/09/07 Python
几行Python代码爬取3000+上市公司的信息
2019/01/24 Python
python flask中动态URL规则详解
2019/11/22 Python
Python使用lambda抛出异常实现方法解析
2020/08/20 Python
船餐厅和泰晤士河餐饮游轮:Bateaux London
2018/03/19 全球购物
创造美妙香氛体验:Aera扩散器和香水
2018/11/25 全球购物
幼儿园消防安全制度
2014/01/26 职场文书
环保标语大全
2014/06/12 职场文书
2014年大学学生会工作总结
2014/12/02 职场文书
工作建议书范文
2019/07/08 职场文书