1. 程式人生 > >微信登陸 (微信PC掃碼授權登陸) 簡單的php程式碼

微信登陸 (微信PC掃碼授權登陸) 簡單的php程式碼

微信PC掃碼授權登陸 php簡單示例程式碼
首先須要申請,必須企業,個體工商戶,媒體等
申請地址 https://open.weixin.qq.com/



我直接上php最簡單程式碼

開始登陸
  1. //-------配置
  2. $AppID ='wx033336c794d4';
  3. $AppSecret ='d4624c36333337af5443d';
  4. $callback  ='http://www.yun8888.net/weixin/';//回撥地址
  5. //微信登入
  6. session_start();
  7. //-------生成唯一隨機串防CSRF攻擊
  8. $state  = md5(uniqid(rand(), TRUE));
  9. $_SESSION["wx_state"
    ]=   $state;//存到SESSION
  10. $callback = urlencode($this->callback);
  11. $wxurl ="https://open.weixin.qq.com/connect/qrconnect?appid=".$this->AppID."&redirect_uri={$callback}&response_type=code&scope=snsapi_login&state={$state}#wechat_redirect";
  12. header("Location: $wxurl");
複製程式碼 回撥地址
  1. if($_GET
    ['state']!=$_SESSION["wx_state"]){
  2. exit("5001");
  3. }
  4. $AppID ='wx33333333334d4';
  5. $AppSecret ='d4624c363333330547af5443d';
  6. $url='https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$AppID.'&secret='.$AppSecret.'&code='.$_GET['code'].'&grant_type=authorization_code';
  7. $ch = curl_init();
  8. curl_setopt
    ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  9. curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  10. curl_setopt($ch, CURLOPT_URL, $url);
  11. $json =  curl_exec($ch);
  12. curl_close($ch);
  13. $arr=json_decode($json,1);
  14. //得到 access_token 與 openid
  15. print_r($arr);
  16. $url='https://api.weixin.qq.com/sns/userinfo?access_token='.$arr['access_token'].'&openid='.$arr['openid'].'&lang=zh_CN';
  17. $ch = curl_init();
  18. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  19. curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  20. curl_setopt($ch, CURLOPT_URL, $url);
  21. $json =  curl_exec($ch);
  22. curl_close($ch);
  23. $arr=json_decode($json,1);
  24. 得到使用者資料
  25. print_r($arr);
複製程式碼 最終輸出如圖所示