Home > Article > Backend Development > How to implement php+ajax to upload images without refreshing
This article mainly introduces the implementation method of php ajax uploading images without refreshing, involving techniques related to php combined with ajax for file transfer operations. Friends in need can refer to the following
The details are as follows:
1.Introduce the file
<!--图片上传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 part
<p class="upimg"> <input name="icon" type="text" class="imgsrc" value="<!--{$contents.icon}-->" /> <p class="showimg"> <!--{if $contents.icon}--> <img src="<!--{$contents.icon}-->" height="120px"> <!--{/if}--> </p> <p class="btn" style="height:20px;"> <span>添加图片</span> <input class="fileupload" type="file" name="pic[]"> </p> </p>
3.Give fileupload plus form
/*图片上传*/ $(".fileupload").wrap("<form action='/bookstore/book/uploadpic' method='post' enctype='multipart/form-data'></form>"); //函数处理
4.ajax file upload
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.Backend Process
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. Hand the returned data to the front end for some processing.
Then submit it to the backend database.
The above is the entire content of this article, I hope it will be helpful to everyone's study.
thinkPHP Verification code login function implemented
Usage of volist tag in Thinkphp
thinkPHP5 implementation of querying the database and returning json data instance
The above is the detailed content of How to implement php+ajax to upload images without refreshing. For more information, please follow other related articles on the PHP Chinese website!