callback.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. $appid = "wx2a2d24fbe2383604";
  3. $secret = "07b59b4bac2f17edc9e121e3dba6d0b3";
  4. $cmurl = "https://jy.chengwuwa.cn/d/index.html";//前端地址
  5. $code = $_GET["code"];
  6. $get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$secret.'&code='.$code.'&grant_type=authorization_code';
  7. $ch = curl_init();
  8. curl_setopt($ch,CURLOPT_URL,$get_token_url);
  9. curl_setopt($ch,CURLOPT_HEADER,0);
  10. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
  11. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
  12. $res = curl_exec($ch);
  13. curl_close($ch);
  14. $json_obj = json_decode($res,true);
  15. //根据openid和access_token查询用户信息
  16. $access_token = $json_obj['access_token'];
  17. $openid = $json_obj['openid'];
  18. $get_user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token.'&openid='.$openid.'&lang=zh_CN';
  19. $ch = curl_init();
  20. curl_setopt($ch,CURLOPT_URL,$get_user_info_url);
  21. curl_setopt($ch,CURLOPT_HEADER,0);
  22. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
  23. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
  24. $res = curl_exec($ch);
  25. curl_close($ch);
  26. //解析json
  27. $user_obj = json_decode($res,true);
  28. //var_dump($user_obj);
  29. $openid=isset($user_obj['openid'])?$user_obj['openid']:null;
  30. $unionid=isset($user_obj['unionid'])?$user_obj['unionid']:null;
  31. $nikname=isset($user_obj['nickname'])?$user_obj['nickname']:null;
  32. $headimgurl=isset($user_obj['headimgurl'])?$user_obj['headimgurl']:null;
  33. $urls=$cmurl.'?openid='.$openid.'&unionid='.$unionid.'&nikname='.$nikname.'&headimgurl='.$headimgurl;
  34. header('location:'.$urls);
  35. ?>