请选择 进入手机版 | 继续访问电脑版
帖子
帖子
用户
博客
课程
显示全部楼层
44
帖子
0
勋章
118
Y币

[其他] getPicture方法,将头像图片提交到php服务端来处理,如何保存

[复制链接]
发表于 2017-5-27 16:17:27
使用getPicture方法,选取相册头像图片,然后提交,通过api.ajax,提交,其中的data:{values: {uid: uid}, files: {photo: ret.data} }
url为php服务端的地址,php服务端,接到post的数据,接下来如何将提交的图片保存在服务端的avatar文件夹中?并将图片的名称修改为日期+uid,将路径保存在数据库的avatar字段中??

有哪位大侠能指教一下?谢谢
1
帖子
0
勋章
3993
Y币
百度相关功能,这里是没分享的了
42
帖子
1
勋章
1万+
Y币
本帖最后由 川哥哥 于 2017-5-27 16:37 编辑

<?php
header("content-type:text/html;charset=utf-8");
$uid = trim($_POST['uid']);
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);  
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 2*1024*1024)  
&& in_array($extension, $allowedExts))
{
        if ($_FILES["file"]["error"] > 0){$list['ok'] = 0;echo json_encode($list);}
        else
        {
                if($_FILES["file"]["type"] == "image/gif"){
                $img=date('Ymd').$uid.'.gif';
                }
                else if($_FILES["file"]["type"] == "image/jpeg" || $_FILES["file"]["type"] == "image/jpg" || $_FILES["file"]["type"] == "image/pjpeg"){
                $img=date('Ymd').$uid.'.jpg';
            }   
                else{
                $img=date('Ymd').$uid.'.png';
                }
                move_uploaded_file($_FILES["file"]["tmp_name"], "avatar/".$img);
                $list['ok'] = 1;
        echo json_encode($list);
        }
}
else{$list['ok'] = -1;}
?>


不知道是不是你想要的
44
帖子
0
勋章
118
Y币
川哥哥 发表于 2017-5-27 16:35
不知道是不是你想要的

这个可以诶~~太感谢了~请问,生成的头像图片的名字,是$img吗?
可以$list['img'] = $img  把这个传到前台么?前台是ret.img吗?
谢谢
44
帖子
0
勋章
118
Y币
川哥哥 发表于 2017-5-27 16:35
不知道是不是你想要的

后台通过$list['img'] = $img,我前台试了下ret.img,发现是undefined的
42
帖子
1
勋章
1万+
Y币
本帖最后由 川哥哥 于 2017-5-27 17:41 编辑
JoviChin 发表于 2017-5-27 16:55
这个可以诶~~太感谢了~请问,生成的头像图片的名字,是$img吗?
可以$list['img'] = $img  把这个传到前 ...

$list['img'] = 'http://自己的网站域名/avatar/'.$img;
手机端<img src="http://自己的网站域名/avatar/' + ret.img + '">

44
帖子
0
勋章
118
Y币
川哥哥 发表于 2017-5-27 17:34
$list['img'] = 'http://自己的网站域名/avatar/'.$img;
手机端

好的,可以了,十分感谢,我想再问一下,如果想控制图片的大小,是不是改$_FILES["file"]["size"] < 2*1024*1024  改这个分辨率就行,比如500*500的,这样就可以间接控制图片的大小了,是这样么
42
帖子
1
勋章
1万+
Y币
JoviChin 发表于 2017-5-27 17:43
好的,可以了,十分感谢,我想再问一下,如果想控制图片的大小,是不是改$_FILES["file"]["size"] < 2*10 ...

在图像上传之前进行处理
68
帖子
0
勋章
1万+
Y币
你用的原生php么?
44
帖子
0
勋章
118
Y币
lzy160824 发表于 2017-5-28 21:28
你用的原生php么?

目前测试时候是的,已经实现
您需要登录后才可以回帖 登录

本版积分规则