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

作者:霍啸林 时间:2023-11-17 11:27:58 

本文分享了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,ajax,无刷新,上传图片
0
投稿

猜你喜欢

  • Django nginx配置实现过程详解

    2022-11-09 11:42:58
  • python实战之德州扑克第三步-比较大小

    2022-01-01 22:27:11
  • python安装whl文件的实战步骤

    2022-04-06 19:59:00
  • CSS结合js实现动态更换皮肤

    2007-07-14 10:01:00
  • python jieba库的基本使用

    2022-10-15 23:01:16
  • 教你用python实现自动回复QQ消息(不到60行)

    2021-05-17 06:19:20
  • 解决Python中的modf()函数取小数部分不准确问题

    2023-06-12 06:24:43
  • python脚本第一行如何写

    2021-03-24 22:56:32
  • 微信小程序中target和currentTarget的区别小结

    2024-04-10 16:17:30
  • Python实现螺旋矩阵的填充算法示例

    2022-06-30 00:18:47
  • 基于python对B站收藏夹按照视频发布时间进行排序的问题

    2022-01-02 11:11:31
  • java JSP开发之Spring中Bean的使用

    2023-06-16 07:35:08
  • 一文带你学会使用PHP接口

    2023-06-07 18:40:13
  • 详解Python中高阶函数(map,filter,reduce,sorted)的使用

    2023-10-24 15:39:09
  • Python下Fabric的简单部署方法

    2023-11-08 07:17:11
  • ASP FCKeditor在线编辑器使用方法

    2023-01-12 23:15:04
  • pytorch+lstm实现的pos示例

    2023-08-11 22:02:10
  • 使用Python操作MySQL的一些基本方法

    2024-01-18 19:16:55
  • MySQL五个查询优化方法

    2009-08-29 15:05:00
  • pytest自动化测试数据驱动yaml/excel/csv/json

    2023-06-18 14:19:47
  • asp之家 网络编程 m.aspxhome.com