php+ajax无刷新上传图片实例代码


Posted in PHP onNovember 17, 2015

本文分享了php结合ajax实现无刷新上传图片的实例代码,分享给大家,希望大家可以和小编一起学习学习,共同进步。

1.引入文件

<!--图片上传begin-->
<script type="text/javascript" src="/js/jquery.form.js"></script>
<script type="text/javascript" src="/js/uploadImg.js"></script>
<link href="/css/uploadImg.css" rel="stylesheet" type="text/css" />
<!--图片上传end-->

2.html部分

<div class="upimg">
       <input name="icon" type="text" class="imgsrc" value="<!--{$contents.icon}-->" />
       <div class="showimg">
        <!--{if $contents.icon}-->
        <img src="<!--{$contents.icon}-->" height="120px">
        <!--{/if}-->
       </div>          
       <div class="btn" style="height:20px;">
          <span>添加图片</span>
          <input class="fileupload" type="file" name="pic[]">
       </div>
       </div>

3.给fileupload加上表单

/*图片上传*/
  $(".fileupload").wrap("<form action='/bookstore/book/uploadpic' method='post' enctype='multipart/form-data'></form>"); //函数处理

4.ajax文件上传

jQuery(function ($) { 
  $(".fileupload").change(function(){ //选择文件 
    if ('' === $(this).val()) return;
    var upimg = $(this).parent().parent().parent();
    var showimg = upimg.find('.showimg');
    var btn = upimg.find('.btn span');
    var imgsrc = upimg.find('.imgsrc');
    $(this).parent().ajaxSubmit({ 
      //dataType: 'json', //数据格式为json 
      beforeSend: function() { //开始上传 
        showimg.empty(); //清空显示的图片 
        imgsrc.val("");
        btn.html("上传中..."); //上传按钮显示上传中 
      }, 
      uploadProgress: function(event, position, total, percentComplete) { 
      }, 
      success: function(data) { //成功 
        //获得后台返回的json数据,显示文件名,大小,以及删除按钮 
        var img = data;
        //显示上传后的图片 
        imgsrc.val("");
        imgsrc.val(img);
        showimg.html("<img width='120' height='120' src='"+img+"'>"); 
        btn.html("上传成功"); //上传按钮还原 
      }, 
      error:function(xhr){ //上传失败 
        btn.html("上传失败"); 
      } 
    }); 
  }); 
});

5.后台进行处理

public function uploadpicAction(){ //图片上传和显示
    $data = "";
    $src = $this->uploadFiles2($imgpath = "/upload/book" ,$filesname = "pic");      
    isset($src[0]['src']) && $src[0]['src'] ? $data = $this->concaturl($src[0]['src']) : null;
    echo $data; 
  }

6.将返回的数据交给前端,进行一些处理。

进而提交到后台数据库。

php+ajax无刷新上传图片实例代码

希望本文所述对大家学习php程序设计有所帮助。

PHP 相关文章推荐
PHP入门速成(2)
Oct 09 PHP
php strtotime 函数UNIX时间戳
Jan 14 PHP
php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
May 15 PHP
php约瑟夫问题解决关于处死犯人的算法
Mar 23 PHP
使用ltrace工具跟踪PHP库函数调用的方法
Apr 25 PHP
PHP连接MySQL进行增、删、改、查操作
Feb 19 PHP
降低PHP Redis内存占用
Mar 23 PHP
PHP使用数组实现矩阵数学运算的方法示例
May 29 PHP
php模仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(中)
Jun 11 PHP
弹出模态框modal的实现方法及实例
Sep 19 PHP
php实现的生成迷宫与迷宫寻址算法完整实例
Nov 06 PHP
Laravel登录失败次数限制的实现方法
Aug 26 PHP
php计算年龄精准到年月日
Nov 17 #PHP
php实现简单的上传进度条
Nov 17 #PHP
PHP安装threads多线程扩展基础教程
Nov 17 #PHP
超详细的php用户注册页面填写信息完整实例(附源码)
Nov 17 #PHP
教大家制作简单的php日历
Nov 17 #PHP
PHP YII框架开发小技巧之模型(models)中rules自定义验证规则
Nov 16 #PHP
PHP Yii框架之表单验证规则大全
Nov 16 #PHP
You might like
WINXP下apache+php4+mysql
2006/11/25 PHP
使用openssl实现rsa非对称加密算法示例
2014/01/24 PHP
jsonp原理及使用
2013/10/28 Javascript
javascript使用定时函数实现跳转到某个页面
2013/12/25 Javascript
jquery.validate使用时遇到的问题
2015/05/25 Javascript
Node.js中常规的文件操作总结
2016/10/13 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
2017/01/03 Javascript
javascript实现秒表计时器的制作方法
2017/02/16 Javascript
Angular2生命周期钩子函数的详细介绍
2017/07/10 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
2017/07/13 Javascript
Vue2仿淘宝实现省市区三级联动
2020/04/15 Javascript
使用JS获取SessionStorage的值
2018/01/12 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
2018/02/13 jQuery
Vue中保存数据到磁盘文件的方法
2018/09/06 Javascript
vue自定义tap指令及tap事件的实现
2018/09/18 Javascript
layui-laydate时间日历控件使用方法详解
2018/11/15 Javascript
vue-cli3中vue.config.js配置教程详解
2019/05/29 Javascript
js实现固定区域内的不重叠随机圆
2019/10/24 Javascript
js前端传json后台接收‘‘被转为quot的问题解决
2020/11/12 Javascript
python里对list中的整数求平均并排序
2014/09/12 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
使用python获取(宜宾市地震信息)地震信息
2019/06/20 Python
100行Python代码实现每天不同时间段定时给女友发消息
2019/09/27 Python
python 操作hive pyhs2方式
2019/12/21 Python
python3.6.8 + pycharm + PyQt5 环境搭建的图文教程
2020/06/11 Python
keras中epoch,batch,loss,val_loss用法说明
2020/07/02 Python
python 视频下载神器(you-get)的具体使用
2021/01/06 Python
Pamela Love官网:纽约设计师Pamela Love的精美、时尚和穿孔珠宝
2020/10/19 全球购物
上海微创软件面试题
2012/06/14 面试题
如何查找网页漏洞
2016/06/22 面试题
经济学博士求职自荐信范文
2013/11/23 职场文书
父亲生日宴会答谢词
2014/01/10 职场文书
工会工作个人总结
2015/03/03 职场文书
民间借贷借条范本
2015/05/25 职场文书
阿凡达观后感
2015/06/10 职场文书
Nginx 安装SSL证书完成HTTPS部署
2022/04/28 Servers