45fan.com - 路饭网

搜索: 您的位置主页 > 电脑频道 > 编程代码 > 阅读资讯:如何实现php+Ajax无刷新上传图片功能?

如何实现php+Ajax无刷新上传图片功能?

2017-08-29 16:10:14 来源:www.45fan.com 【

如何实现php+Ajax无刷新上传图片功能?

本文实例讲述了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程序设计有所帮助。


本文地址:http://www.45fan.com/bcdm/91722.html
Tags: 上传 刷新 php+ajax
编辑:路饭网
推广内容
推荐阅读
热门推荐
推荐文章
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部