thinkphp jquery实现图片上传和预览效果


Posted in PHP onJuly 22, 2020

本文实例为大家分享了jquery实现图片上传和预览效果的具体代码,供大家参考,具体内容如下

先上效果图:

thinkphp jquery实现图片上传和预览效果

那个file按钮样式先忽略

点击选择图片(浏览),随便选一张图片

thinkphp jquery实现图片上传和预览效果

js代码如下

//上传图片立即预览
 function PreviewImage(imgFile) {
 var filextension = imgFile.value.substring(imgFile.value
 .lastIndexOf("."), imgFile.value.length);
 filextension = filextension.toLowerCase();
 if ((filextension != '.jpg') && (filextension != '.gif')
 && (filextension != '.jpeg') && (filextension != '.png')
 && (filextension != '.bmp')) {
 alert("对不起,系统仅支持标准格式的照片,请您调整格式后重新上传,谢谢 !");
 imgFile.focus();
 } else {
 var path;
 if (document.all)//IE
 {
 imgFile.select();
 path = document.selection.createRange().text;
 document.getElementById("photo_info").innerHTML = "";
 document.getElementById("photo_info").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true',sizingMethod='scale',src=\""
  + path + "\")";//使用滤镜效果 
 } else//FF
 {
 path = window.URL.createObjectURL(imgFile.files[0]);// FF 7.0以上
 //path = imgFile.files[0].getAsDataURL();// FF 3.0
 document.getElementById("photo_info").innerHTML = "<img id='img1' width='120px' height='100px' src='"+path+"'/>";
 //document.getElementById("img1").src = path;
 }
 }
 }

html代码,其实不重要啦

<div class="form-group has-success has-feedback">
  <label for="info_photo" class="col-sm-2 control-label">物品图片</label>
  <div class="col-sm-10">

  <span class="btn btn-success btn-file"> 选择图片 <span
   class="glyphicon glyphicon-picture" aria-hidden="true"></span>
   <input type="file" name="info_photo" value="" id="info_photo"
   onchange='PreviewImage(this)' />
  </span>
  </div>

  </div>

  <div class="form-group has-success has-feedback">
  <label for="info_desc" class="col-sm-2 control-label"><span
  style="color: red;">* </span> 详细描述</label>
  <div class="col-sm-10">
  <textarea class="form-control" rows="5" id="info_desc"
   name="info_desc" placeholder="如需补充,请填写..." title="可包含中文数字和常用字符"></textarea>
  <div id="photo_info" class="photo_info"></div>
  </div>
  </div>

css代码就不上了啊
顺便补充一下thinkphp上传图片代码,把整个发布消息都拷过了算了

public function loseThing(){
 $m=M('info');
 $m->create();
 $upload = new \Think\Upload();// 实例化上传类
 $upload->maxSize = 3145728 ;// 设置附件上传大小
 $upload->exts = array('jpg', 'gif', 'png', 'jpeg','bmp');// 设置附件上传类型
 $upload->rootPath = './Public/';
 $upload->savePath = '/Uploads/'; // 设置附件上传目录
 $upload->autoSub = false;
 // 上传文件
 $info = $upload->upload();
 if($info) {
 // 上传成功
 foreach($info as $file){
 $m->info_photo=$file['savename'];
 }
 }
 $m->create_time=date('Y-m-d H:i:s',time()); 
 $m->uid=$_SESSION['id'];
 $m->username=$_SESSION['username'];
 /* $m->user_img=$_SESSION['filename']; */

 $m->info_type="寻物启事";//信息类型为失物
 $lastId=$m->add();
 if($lastId){
 $this->success('发布成功');
 }else{
 $this->error('发布失败,请先登录');
 } 
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
判断是否为指定长度内字符串的php函数
Feb 16 PHP
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
Jun 20 PHP
php文件上传的例子及参数详解
Dec 12 PHP
php生成txt文件标题及内容的方法
Jan 16 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
Nov 18 PHP
php给图片添加文字水印方法汇总
Aug 27 PHP
php开发时容易忘记的一些技术细节
Feb 03 PHP
全新Mac配置PHP开发环境教程
Feb 03 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
May 13 PHP
微信封装的调用微信签名包的类库
Jun 08 PHP
PDO::beginTransaction讲解
Jan 27 PHP
详解PHP用substr函数截取字符串中的某部分
Dec 03 #PHP
微信公众平台开发(五) 天气预报功能开发
Dec 03 #PHP
php die()与exit()的区别实例详解
Dec 03 #PHP
详解Yii2 rules 的验证规则
Dec 02 #PHP
Yii框架数据模型的验证规则rules()被执行的方法
Dec 02 #PHP
thinkPHP统计排行与分页显示功能示例
Dec 02 #PHP
thinkPHP交易详情查询功能详解
Dec 02 #PHP
You might like
php UTF-8、Unicode和BOM问题
2010/05/18 PHP
JavaScript 实现模态对话框 源代码大全
2009/05/02 Javascript
几个常用的JavaScript字符串处理函数 - split()、join()、substring()和indexOf()
2009/06/02 Javascript
input按钮的事件处理大全
2010/12/10 Javascript
最流行的Node.js精简型和全栈型开发框架介绍
2015/02/26 Javascript
一个超简单的jQuery回调函数例子(分享)
2016/08/08 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
jQuery中DOM节点的删除方法总结(超全面)
2017/01/22 Javascript
基于jQuery实现咖啡订单管理简单应用
2017/02/10 Javascript
js实现带简单弹性运动的导航条
2017/02/22 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
JQuery通过后台获取数据遍历到前台的方法
2018/08/13 jQuery
JS基于Location实现访问Url、重定向及刷新页面的方法分析
2018/12/03 Javascript
vue实现的仿淘宝购物车功能详解
2019/01/27 Javascript
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
2019/02/11 Javascript
详解vue-cli+es6引入es5写的js(两种方法)
2019/04/19 Javascript
vue+element实现表单校验功能
2019/05/20 Javascript
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
[02:28]DOTA2亚洲邀请赛 LGD战队巡礼
2015/02/03 DOTA
python实现从web抓取文档的方法
2014/09/26 Python
Python基于win32ui模块创建弹出式菜单示例
2018/05/09 Python
Python 读写文件的操作代码
2018/09/20 Python
flask session组件的使用示例
2018/12/25 Python
详解用Python为直方图绘制拟合曲线的两种方法
2019/08/21 Python
Python reduce函数作用及实例解析
2020/05/08 Python
Python try except finally资源回收的实现
2021/01/25 Python
网页切图的CSS和布局经验与要点
2015/04/09 HTML / CSS
英国假睫毛购买网站:FalseEyelashes.co.uk
2018/05/23 全球购物
志愿者服务感言
2014/02/27 职场文书
健康教育评估方案
2014/05/25 职场文书
诚实守信道德模范事迹材料
2014/08/15 职场文书
镇班子对照检查材料思想汇报
2014/09/24 职场文书
小学班主任工作总结2015
2015/04/07 职场文书
反邪教警示教育活动总结
2015/05/09 职场文书
JS实现扫雷项目总结
2021/05/19 Javascript