图片base64预览及上传PHP处理

1、前端代码

<div id="img"/>
<input type="file" id="img-select"/>

<input type='button' id='submit'/>

var newUrl;
function imgPreview() {//将图片转成base64,实现预览效果
    var files = this.files;
    var file = files[0];
    var reader = new FileReader();

    reader.readAsDataURL(file);

    reader.onload = function() {

        // 图片base64化
        var newUrl= this.result;
       $('#img').style.backgroundImage='url(' + newUrl+ ')';//预览
    };

}
$('#img-select').addEventListener('change',imgPreview);

$("#submit").on('click', function(){
        $.ajax({
            url:"onload.php",
            type:'POST',
            dataType:'json',
            data:{img:newUrl},
            success:function(list) {
                console.log(list)
                location.href ="跳转页面";                
            },
            error:function(){
               console.log("请求失败")

             }
        });
});

2、PHP代码

$img=$_POST['img'];

$base64_body = substr(strstr($img,','),1);//去除头部
$img = base64_decode($base64_body);//解码
//存储or创建图片
$path = "/upload/product/";//存储路径
if(!file_exists($path)){
     mkdir($path,0777,true);
}
$imgName=$path.mt_rand(100,999).time().mt_rand(100,999).".jpg";//图片存储路径
file_put_contents($imgName,$img);//存储图片
 

转载于:https://my.oschina.net/lixiaoting/blog/2988675

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值