PHP微信公众号网页授权
首先域名需要备案并在公众号进行设置域名
1.转到微信用户同意授权返回CODE
2.通过code换取授权appid access_token
3.拉取用户信息

state参数可自定义返回信息
snsapi_base 不需要用户同意授权只获取openid
snsapi_userinfo 需要用户同意 获取openid 和 用户资料

$info="luyis";
$appid="*****";//公众号appid
$myurl="http://".$_SERVER['SERVER_NAME']."/index/weixin/open";//code返回地址
$wxurl='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect_uri='.$myurl.'&response_type=code&scope=snsapi_userinfo&state='.$info.'#wechat_redirect';//url 参数
header('Location:'.$wxurl);
$appid="*****";
$key="88888";
$code   = $_GET['code'];
if ($code) {//初始化$ch = curl_init();//设置选项,包括URLcurl_setopt($ch, CURLOPT_URL, "https://api.weixin.qq.com/sns/oauth2/access_token?appid=$appid&secret=$key&code=$code&grant_type=authorization_code");curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);//执行并获取HTML文档内容$output = curl_exec($ch);//释放curl句柄curl_close($ch);
}$oauth2 = json_decode($output,true);//如果code失效重新获取if(empty($oauth2["access_token"])){$urls ="http://".$_SERVER['SERVER_NAME']."/index/weixin/index?qrcode=".$_GET['state'];echo "<script language='javascript' type='text/javascript'>"; echo "window.location.href='$urls'"; echo "</script>"; }$access_token = $oauth2["access_token"];//openid$openid = $oauth2['openid'];//第二步:根据全局access_token和openid查询用户信息$get_user_info_url = "https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN";$userinfo = $this->http_curl($get_user_info_url);
function http_curl($url){//用curl传参$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//关闭ssl验证curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);curl_setopt($ch,CURLOPT_HEADER, 0);$output = curl_exec($ch);curl_close($ch);return json_decode($output, true);
}

2019-09-04

PHP微信公众号登录获取openid信息相关推荐

  1. vue h5微信公众号授权获取用户信息

    vue h5微信公众号授权获取用户信息 1.申请测试账号 https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login 2.修改网页授权 ...

  2. 微信公众号开发获取openID以及用户详细信息,超详细步骤,亲测开发

    好久没有发过博文了,恰好这两天做了一个关于微信公众号开发的东东,拿出来和大家分享一下. 需要做一套微信签到.抽奖系统,我要在后台存储微信用户的相关信息,openIDNickname之类的信息.在开发前 ...

  3. 微信公众号如何获取openid

    如何获取openid (微信公众号配置,略) 先获取code,在根据code就能获取 openid 1.登录的时候,前台页面直接跳转(一个微信的接口地址)页面 var APPID = "&q ...

  4. 微信公众号网页获取用户信息

    微信小程序开发交流qq群   173683895    承接微信小程序开发.扫码加微信. 效果图 html 代码: <!DOCTYPE html> <html><head ...

  5. 【微信公众号】获取用户信息

    author:咔咔 wechat:fangkangfk 已经很久没有在写公众号了,今天在回顾一下 首先获取测试账号 然后配置域名 打开文档看看步骤:https://mp.weixin.qq.com/w ...

  6. H5(uniapp)联合tp6 开发微信公众号(获取openid)

    1. 公众号申请好后,配置公众号基本信息,主要是appid,AppSecret, 还有ip白名单  2. 配置授权域名,不然调用接口获取openid会提示redirect_uri域名与配置不一致 1) ...

  7. 微信公众号开发--获取用户信息中文乱码的解决方案

    在微信开发中我们会经常需要获取用户的信息. 微信给我们提供了获取用户信息的api, 地址为 https://api.weixin.qq.com/cgi-bin/user/info?access_tok ...

  8. 关于微信公众号页面获取code进行微信授权登录

    关于微信公众号页面获取code进行微信授权登录 前言 提示:本文章为个人平时开发中的一些坑,对于新手可以耐心看一下,如果您感觉可以的话,请点个小星星再走吧,多谢了~~~ 提示:以下是本篇文章正文内容( ...

  9. 微信公众号h5获取用户openId的方法和步骤

    微信h5静默.非静默授权获取用户openId的方法和步骤: 一.openId是什么? openId是用户在当前公众号下的唯一标识('身份证'),就是说通过这个openId,就能区分在这个公众号下具体是 ...

  10. Android实现绑定微信公众号,获取相对公众号的唯一openId

    Android绑定微信公众号.获取相对公众号的唯一openId 注意:为了识别用户,每个用户针对每个公众号会产生一个安全的OpenID,如果需要在多公众号.移动应用之间做用户共通,则需前往微信开放平台 ...

最新文章

  1. Coherence-Enhancing Shock Filters(附源码)
  2. PowerBI随笔(7)-lookupvalue、divide
  3. c语言结果九位数,C语言实例:九位累进可除数
  4. web前端最全各类资源
  5. RabbitMQ的Android端接收
  6. android ViewFlipper的使用
  7. windows下WDK创建免费的测试证书,并签名windows驱动文件(附带测试效果)
  8. 微信小程序 — 生成二维码功能
  9. 计算机java毕设_javaweb计算机毕设怎么做比较容易?
  10. 【嵌入式】基于ARM的嵌入式Linux开发总结
  11. pdf阅读器怎么样去拆分文档啊
  12. 机器人领域SCI期刊总结
  13. 文档加密保护有加密狗全解决:word加密
  14. CM3基础(持续更新)
  15. 半小时实现Java手撸Http协议,爽!!(附完整源码,建议收藏)
  16. 【微信小程序】获取用户信息
  17. Measurement Studio函数ReadMultiSampleAsync
  18. 生产企业原材料订购与运输的研究-数据处理课程设计
  19. nvchad添加插件
  20. Python基础之:Python的数据结构

热门文章

  1. 联想服务器怎么加硬盘分区,联想EDU硬盘保护OEM分区的创建以及安装方法
  2. Soya语言1.0.1-alpha发布!
  3. 深入浅出HashMap
  4. 国产手机厂商抢占高端,二手机市场不容忽视
  5. 银行业务中台和阿里中台的异曲同工之妙
  6. PyTorch基础:Tensor的自动广播机制与向量化
  7. html五线谱编辑器,​Notation Pad五线谱乐谱编辑器
  8. 移动端 touch 手机拖动 css停止问题
  9. 模仿开发H5游戏,看你有多色
  10. 51单片机LCD1602液晶屏显示