php无刷新上传图片-阿里云开发者社区

开发者社区> 桃子红了呐> 正文

php无刷新上传图片

简介:
+关注继续查看

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.将返回的数据交给前端,进行一些处理。

进而提交到后台数据库。

 



本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/3725740.html如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PHP处理图片(orientation)旋转问题
PHP处理图片(orientation)旋转问题
1360 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10018 0
Js无刷新请求新验证码图片!
超简单:只加一句onclick就行了...  
516 0
laravel上传图片报错
在laravel的上传图片代码文件中路径如下: vendor\stevenyangecho\laravel-u-editor\src\Uploader\Upload.php第131行有一句代码错误$randNum = rand(1, 10000000000) .
876 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13818 0
PHP图片裁剪
PHP的GD库还是很强悍的。之前没玩过,自己根据搜的示例随便试了下 &gt;;&lt; &lt;?php function resize($newWidth, $targetFile, $originalFile, $xyz) { $info = getimagesize($originalFile); $mime = $info['mime']
1765 0
4269
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载