//微信登录public function wxLogin(){$code = input(de');//获取code$iv = input('param.iv');//获取IV用于解密$encryptedData = input(ptedData');//用户加密信息//通过code获取openid、session_key$url = '='.$this->appid.'&secret='.$this->serect.'&js_code='.$code.'&grant_type=authorization_code';$res = file_get_contents($url);$jscode_res = json_decode($res,true);//解密用户信息并获取open_id、unionID、用户信息$wechat = new WxBizDataCrypt($this->appid,$jscode_res['session_key']);$errCode = $wechat->decryptData($encryptedData,$iv,$data);$heavy_data = $data;//引用值赋值给变量$en_res = json_decode($heavy_data,true);$user_id = db('member')->where('unionid',$en_res['unionId'])->value('id');if(!empty($user_id)){//判断该用户是否存在if(empty(db('member')->where('id',$user_id)->value('small_open_id'))){//判断该用户小程序openid不存在就写入if(!db('member')->where('unionid',$en_res['unionId'])->update(['small_open_id' => $en_res['openId']])) return $this->ReturnStatus(false,'小程序openid更新异常');}return $this->ReturnStatus(true,'正常',array('user_id' => $user_id));}else{$data = array('small_open_id' => $en_res['openId'],'user_name' => $en_res['nickName'],'user_pass' => md5('000000'),'add_time' => time(),'user_type' => 1,'head_ico' => $en_res['avatarUrl'],'unionid' => $en_res['unionId'],'login_type' => 2,);$user_id = db('member')->insertGetId($data);if($user_id){return $this->ReturnStatus(true,'新增用户正常',array('user_id' => $user_id));}else{return $this->ReturnStatus(false,'新增用户异常',null);}}}
本文发布于:2024-01-28 03:13:30,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063828144373.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |