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 相关文章推荐
利用discuz自带通行证整合dedecms的方法以及文件下载
Mar 06 PHP
php获取淘宝分类id示例
Jan 16 PHP
php阻止页面后退的方法分享
Feb 17 PHP
apache中为php 设置虚拟目录
Dec 17 PHP
PHP时间和日期函数详解
May 08 PHP
PHP SplObjectStorage使用实例
May 12 PHP
php用户登录之cookie信息安全分析
May 13 PHP
Yii2使用自带的UploadedFile实现的文件上传
Jun 20 PHP
完美解决在ThinkPHP控制器中命名空间的问题
May 05 PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 PHP
PHP token验证生成原理实例分析
Jun 05 PHP
使用Git实现Laravel项目的自动化部署
Nov 24 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 Rename 更改文件、文件夹名称
2011/05/24 PHP
Laravel实现自定义错误输出内容的方法
2016/10/10 PHP
PHP基于swoole多进程操作示例
2019/08/12 PHP
Javascript中call的两种用法实例
2013/12/13 Javascript
Javascript浅谈之this
2013/12/17 Javascript
jquery查找tr td 示例模拟
2014/05/08 Javascript
javascript实时显示北京时间的方法
2015/03/12 Javascript
Javascript中的call()方法介绍
2015/03/15 Javascript
JavaScript编写推箱子游戏
2015/07/07 Javascript
javascript实现确定和取消提示框效果
2015/07/10 Javascript
学习JavaScript事件流和事件处理程序
2016/01/25 Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
2016/04/12 Javascript
javascript中异常处理案例(推荐)
2016/10/03 Javascript
Jquery实时监听input value的实例
2017/01/26 Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
2017/12/27 Javascript
vue项目使用微信公众号支付总结及遇到的坑
2018/10/23 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
微信小程序wepy框架学习和使用心得详解
2019/05/24 Javascript
Vue实现数据请求拦截
2019/10/23 Javascript
python的绘图工具matplotlib使用实例
2014/07/03 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
Python3 实现文件批量重命名示例代码
2019/06/03 Python
python变量的存储原理详解
2019/07/10 Python
Django使用中间键实现csrf认证详解
2019/07/22 Python
numpy.ndarray 实现对特定行或列取值
2019/12/05 Python
python安装dlib库报错问题及解决方法
2020/03/16 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
Scotch Porter官方网站:男士美容产品
2020/08/31 全球购物
网络编辑岗位职责范本
2014/02/10 职场文书
党员批评与自我批评发言
2014/10/02 职场文书
2014年政府采购工作总结
2014/12/09 职场文书
超市工作总结范文2014
2014/12/19 职场文书
故意伤害罪辩护词
2015/05/21 职场文书
个人催款函范文
2015/06/24 职场文书
干部理论学习心得体会
2016/01/21 职场文书
Python中使用Opencv开发停车位计数器功能
2022/04/04 Python