//*************************** // 授权登录接口 //*************************** public function api_authlogin(){ // var_dump($_POST); $openid = $_POST['openid']; if (!$openid) { echo json_encode(array('code'=>0,'msg'=>'授权失败!')); exit(); } $con = array(); $con['openid']=trim($openid); $user = new Wxuser(); $u = $user->where($con)->find(); $uid = $u['uid']; // var_dump($uid); if ($uid) { $userinfo = $user->where('uid='.intval($uid))->find(); if (empty($userinfo)) { echo json_encode(array('code'=>0,'msg'=>'账号状态异常!')); exit(); } $err = array(); $err['ID'] = intval($uid); $err['NickName'] = $_POST['NickName']; $err['HeadUrl'] = $_POST['HeadUrl']; echo json_encode(array('code'=>1,'data'=>$err)); exit(); }else{ $data = array(); $data['username'] = $_POST['NickName']; $data['uname'] =$_POST['NickName']; $data['photo'] = $_POST['HeadUrl']; $data['sex'] = $_POST['gender']; $data['openid'] = $openid; $data['source'] = 'wx'; //$data['addtime'] = time(); if (!$data['openid']) { echo json_encode(array('code'=>0,'msg'=>'授权失败!','data' => '')); exit(); } //$res = M('user')->add($data); // var_dump($data); $res = $user->save($data); // var_dump($res); if ($res) { $err = array(); $err['ID'] = intval($user->uid); $err['NickName'] = $data['username']; $err['HeadUrl'] = $data['photo']; echo json_encode(array('code'=>1,'arr'=>$err)); exit(); }else{ echo json_encode(array('code'=>0,'msg'=>'授权失败!','data' => '')); exit(); } } } //*************************** // 获取sessionkey 接口 //*************************** public function api_getsessionkey(){ $appid = config('sys.appid'); $secret = config('sys.appsecret'); // var_dump($wx_config); $code = trim($_POST['code']); if (!$code) { echo json_encode(array('code'=>0,'msg'=>'非法操作!','data' => '')); exit(); } if (!$appid || !$secret) { echo json_encode(array('code'=>0,'msg'=>'非法操作!','data' => '')); exit(); } $get_token_url = 'https://api.weixin.qq.com/sns/jscode2session?appid='.$appid.'&secret='.$secret.'&js_code='.$code.'&grant_type=authorization_code'; // dump($get_token_url); /*$ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$get_token_url); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 ); //curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); $res = curl_exec($ch); curl_close($ch);*/ $ch = curl_init(); // 2. 设置选项,包括URL curl_setopt($ch,CURLOPT_URL,$get_token_url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 3. 执行并获取HTML文档内容 $output = curl_exec($ch); if($output === FALSE ){ echo "CURL Error:".curl_error($ch); } // 4. 释放curl句柄 curl_close($ch); // dump($output); echo json_encode(array('code'=>1,'msg'=>'返回sessionkey','data' => json_decode($output,true) )); // echo $output; exit(); }
微信小程序登录例子
最新推荐文章于 2024-08-20 11:36:10 发布