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 相关文章推荐
数字转英文
Dec 06 PHP
php中使用cookie来保存用户登录信息的实现代码
Mar 08 PHP
一个简洁的PHP可逆加密函数(分享)
Jun 06 PHP
从PHP $_SERVER相关参数判断是否支持Rewrite模块
Sep 26 PHP
php接口和抽象类使用示例详解
Mar 02 PHP
PHP中的插件机制原理和实例
Jul 08 PHP
php使用array_search函数实现数组查找的方法
Jun 12 PHP
php中注册器模式类用法实例分析
Nov 03 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
Mar 01 PHP
微信公众号开发客服接口实例代码
Oct 21 PHP
php实现购物车功能(以大苹果购物网为例)
Mar 09 PHP
自写的利用PDO对mysql数据库增删改查操作类
Feb 19 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
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
2010/03/15 PHP
PHP批量上传图片的具体实现方法介绍.
2014/02/26 PHP
PHP Curl出现403错误的解决办法
2014/05/29 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
PHP的pcntl多进程用法实例
2015/03/19 PHP
PHP中array_keys和array_unique函数源码的分析
2016/02/26 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
2020/06/06 PHP
javascript Prototype 对象扩展
2009/05/15 Javascript
JavaScript 异步调用框架 (Part 6 - 实例 &amp; 模式)
2009/08/04 Javascript
jQuery 事件队列调整方法
2009/09/18 Javascript
Array的push与unshift方法性能比较分析
2011/03/05 Javascript
Node.js中对通用模块的封装方法
2014/06/06 Javascript
深入理解JavaScript系列(29):设计模式之装饰者模式详解
2015/03/03 Javascript
jQuery实现的简单拖拽功能示例
2016/09/13 Javascript
js实现文字截断功能
2016/09/14 Javascript
js中json处理总结之JSON.parse
2016/10/14 Javascript
从0开始学Vue
2016/10/27 Javascript
Jquery通过ajax请求NodeJS返回json数据实例
2016/11/08 NodeJs
基于JavaScript实现右键菜单和拖拽功能
2016/11/28 Javascript
Vue.js计算属性computed与watch(5)
2016/12/09 Javascript
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
vue-router相关基础知识及工作原理
2018/03/16 Javascript
Angular2进阶之如何避免Dom误区
2018/04/02 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
vue中动态select的使用方法示例
2019/10/28 Javascript
微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)
2020/03/10 Javascript
微信小程序完美解决scroll-view高度自适应问题的方法
2020/08/08 Javascript
JavaScript中的执行环境和作用域链
2020/09/04 Javascript
在VUE中使用lodash的debounce和throttle操作
2020/11/09 Javascript
Python实现求一个集合所有子集的示例
2018/05/04 Python
python可以用哪些数据库
2020/06/22 Python
python定义具名元组实例操作
2021/02/28 Python
天猫国际进口超市直营:官方直采,一站购齐
2017/12/11 全球购物
幼儿园庆六一游园活动方案
2014/01/29 职场文书
学习优秀党员杨宗兴先进事迹材料思想汇报
2014/09/14 职场文书
创业计划书之香辣虾火锅
2019/09/23 职场文书