更新操作

来源:7-14 前端用户登录逻辑开发(二)

帅的被狗撵

2020-12-02

/**
     * 登录业务逻辑
     * @name:login
     * @param array $data
     * @return bool
     * @author: lzjian 2020/11/28 17:12
     */
    public function login(array $data)
    {

        $code = cache(config('redis.code_pre').$data['phone_number']);
        if(empty($code) || $data['code'] != $code) {
            throw new ClientException('验证码错误');
        }
        //如果用户不存在,新增用户数据
        $user = $this->UserObj->getUserByPhoneNumber($data['phone_number']);
        if(empty($user)) {
            $username = '危月燕_'.$data['phone_number'];
            $save = [
                'username' => $username,
                'phone_number' => $data['phone_number'],
                'ltype' => 0,
                'type' => $data['type'],
                'status' => config('status.mysql.table_normal'),
            ];

            $res = $this->UserObj->save($save);
        } else {
            $save = [
                'id' => $user['id'],
                'type' => $data['type'],
            ];
            $res = UserModel::update($save);
        }

        if(empty($res)) {
            throw new ClientException('登录失败');
        }

        return true;
    }

老师,这是我完善的更新操作,还有没有更好的处理方法了

写回答

1回答

天经地义

2020-12-03

同学你用户存在的情况下为什么还要更新一下id和type是呢,最好可以记录一下当前的登录时间,IP,

返回true之后记得保存登录态

0
1
帅的被狗撵
id不是主键吗?update更新不是要传主键吗?
2020-12-03
共1条回复

全流程开发 TP6.0实战高并发电商服务系统

一课就能掌握TP6.0基础及运用,打造完整高并发的电商后端项目

1458 学习 · 1310 问题

查看课程