<div class="warp">
<input type="file" id="file" accept="image/*" onchange="upimg(this)" />
</div>
<img src="" />
<script>
//上传图片方法
function upimg(obj){
var fileData = obj.files[0];//这是我们上传的文件
console.log(fileData)
var formData = new FormData();
// 服务端要求参数是 pic1
formData.append('image',fileData);
$.ajax({
url:"{:url('user/upmemberphoto')}",
type:'post',
data:formData,
cache: false, //上传文件不需要缓存
processData: false, // 告诉jQuery不要去处理发送的数据
contentType: false, // 告诉jQuery不要去设置Content-Type请求头
success:function(data){
console.log(data);
// 设置图片预览功能
$('.head-img').attr('src',data.picAddr);
}
})
}
</script>
thinkphp压缩图片插件官方地址
使用Composer安装ThinkPHP5的图像处理类库:
composer require topthink/think–image
//上传会员照片接口
public function upmemberphoto(){
// 获取上传文件
$file = request()->file('image');
$url=ROOT_PATH.'/public/uploads/member';
// 移动到本地服务器==这个是保存原图
$info = $file->move($url);
if ($info) {
$tempstr=$info->getSaveName();
$tempstr=str_replace("\","/",$tempstr);
$imgurl=$url.'/'.$tempstr;
// 按照原图的比例生成一个最大为320*320的缩略图并保存为thumb.png==这个是压缩后保存
$image = thinkImage::open($imgurl);
$image->thumb(320,320)->save($imgurl);
return ['code' => 200, 'message' =>'上传成功','data'=>'/uploads/member/'.$tempstr];
} else {
// 文件上传失败
return ['code' => 400, 'message' => '上传失败'];
}
}
<img id="memberHeadimg" src="" alt=""/>
<input type="file" id="imgopipt" accept="image/*" onchange="getBase64(event)" />
<input type="hidden" id="photo" name="photo"/>
//上传图片获取base64
function getBase64(e){
// 选择的文件
let file = e.target.files[0];
console.log(file.name) // 文件名称,有需求可处理
console.log(file.type) // 文件类型,有需求可处理
// 判断文件是否读取完毕,读取完毕后执行
if (window.FileReader) {
let reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function(e) {
let base64String = e.target.result;
// 此处可对该base64进行获取赋值传入后端
console.log("bese64编码:", base64String);
$("#photo").val(base64String)
$("#memberHeadimg").attr('src',base64String)
}
}
}
原文地址:https://blog.csdn.net/qq_21810059/article/details/133555819
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_26604.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。