Thinkphp+Jqueryfrom图片异步上传预览

让图片异步上传到项目目录中,让用户或管理员在上传头像或商品图片可以提前预览是否要上传的正确

用第三方插件JQueryfrom来实现这功能

在视图文件中导入JQuery和JQueryfrom文件

<load file="__PUBLIC__/js_css/jquery-1.9.1.min.js"/>
<load file="__PUBLIC__/js_css/jquery.form.js"/>


html中body为

<div>
    <img id="img" src="" style="display:none" style="width: 100px;height: 100px">
    <form id='myupload' method="post" enctype="multipart/form-data" action="{:U('upload')}">
        <input type="file" name="imageload" id="imageUpload" value="">
    </form>
    <span id="id"></span>
</div>




用JQuery语法编写javaScript代码

<script type="text/javascript">
        $(document).ready(function() {
                    $('#imageUpload').change(function () {
                        $('#myupload').ajaxSubmit({
                            dataType: 'json',
                            success: function (data) {
                                if (data.status == 1) {
                                    var src = data.src;
                                    $('#img').attr('src', src);
                                    $('#img').show();
                                    $('#id').text(data.content);
                                } else {1
                                    $('#id').text(data.content);
                                }
                            },
                            error: function () {
                                alert('上传失败');
                            },
                        })
                    })
        })
    </script>


在控制器新建一个方法

public function upload()
    {
        if(!empty($_FILES)){
            $upload=new \Think\Upload();
            $upload->maxSize=3145728; //文件上传的大小限制
            $upload->exts=array('jpg','gif','png','jpeg'); //上传文件后缀的样式
            $upload->rootPath='./';   //上传文件根目录
            $upload->savePath='Public/Image/'; //上传文件的子目录
            $upload->saveName='time';//上传文件的名称
            $info=$upload->uploadOne($_FILES['imageload']); //上传单文件
            if(!$info){
                $data['status']=0;
                $data['content']="上传失败";
                $this->ajaxReturn($data);
            }else{
                $data['status']=1;
                $data['src']=__ROOT__.'/'.$info['savepath'].$info['savename'];
                $data['content']="上传成功";
                $this->ajaxReturn($data);
            }
        }
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值