微信公众平台开发教程①获取用户Openid及个人信息图文详解

yipeiwu_com6年前PHP代码库

本文实例讲述了微信公众平台开发获取用户Openid及个人信息。分享给大家供大家参考,具体如下:

前言:

初次尝试微信公众号的开发,对于学习方法的探索都是来源于网上的博客、问答,对于参差不齐的信息,自己也是有苦说不出,抽出一点时间写点文章,既是对自己的学习总结,也希望给予同是菜鸟的学渣一点帮助

背景介绍:

我需要用户接收微信分享的链接后,点击进入给参加活动的用户【点赞】,然后需要后台获取该微信用户的 openid 作为唯一的标记信息,以便保证该用户下次进入后进行数据库的比对,直接提取其对应的操作信息

操作流程:

一.公众号的信息配置

(1).一般情况下,使用的公众号/服务号 进行配置的信息基本如下:

       

(2).因为我个人学习申请的是订阅号,好多功能不开放,进而选择了“公众平台测试账号”

       

(3).点击“进入”后会被要求扫描二维码,使用自己的微信账号就可以

需要注意的是,“接口配置信息”中,URL为验证 token 的回调地址,此URL填写时多半需要你已经将代码上传的外网可访问的地址,我在后面会提供相应代码,再者注意Token值的确定,因为后面代码中会用到

       

(4).下拉页面,需要配置 网页授权获取用户基本信息

需要注意的是回调页面的域名一定不要写错,之前我就是错在这里浪费了很多时间,如果错误,后面二维码扫描时会报错:“redirect_uri参数错误”.个人建议去掉“http://”以及多余的后缀就好,可以参考下图

       

       

注:建议参考新篇(简洁化)-> 微信公众平台开发之微信集成类的使用

二.后台代码的编写

(1).参考回调地址的代码,该文件是我直接从开发者平台下载而来,只改动了“token”值

(2).参考下面访问地址的代码

注意 appid 的正确填写,其次就是 redirect_uri 的地址确定,我提供的可作参考。再者对于下面代码中的url中“scope=snsapi_userinfo”可以自行控制,需要分辨 snsapi_base 和 snsapi_userfo 的简单区别,百度可有很多具体解释。

(3).参考 redirect_uri 中的代码

此代码的功能是打印出微信用户的信息,便于参考获取的 json 数据,当提取到微信用户的数据,后续相关数据库操作代码开发就不是难事了。



三.最后的功能测试

(1).使用“草料二维码”生成微信可扫描的二维码,然后使用手机扫描即可:
   (2).扫描过后显示如下:
   

附录:

(1).提示信息

①. 微信公众号开发文档中有说明,需要访问的网站域名端口为 80,需要注意一下,当然多数默认为 80端口开放,如果没有外网可访问的网站,建议使用新浪 SAE,在此我使用的是公司服务器直接测试

. 因为微信开发的信息更新,获取我们网上获取的信息已过时,所以建议学会方法后面的操作参考开发文档也不是难事

. 在此提供两个参考网站,个人觉得除了部分时间久远,还是很详细的,尤其对于SAE,以及开发文档的解释都值得一读

(2).文章推荐

推荐新篇(简洁化)微信开发集成类的使用

(3).源代码下载 >>>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP微信开发技巧汇总》、《php curl用法总结》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《PHP中json格式数据操作技巧汇总》及《PHP针对XML文件操作技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

用PHP实现图象锐化代码

<?   //读取图像的类型     //1 = GIF, 2 = JPG, 3...

PHP实现图的邻接矩阵表示及几种简单遍历算法分析

本文实例讲述了PHP实现图的邻接矩阵表示及几种简单遍历算法。分享给大家供大家参考,具体如下: 在web开发中图这种数据结构的应用比树要少很多,但在一些业务中也常有出现,下面介绍几种图的寻...

thinkPHP5实现的查询数据库并返回json数据实例

本文实例讲述了thinkPHP5实现的查询数据库并返回json数据。分享给大家供大家参考,具体如下: TP5 实现查询数据库返回json数据(返回json数据函数实例) 返回结果: 复制...

PHP中round()函数对浮点数进行四舍五入的方法

本文实例讲述了PHP中round()函数对浮点数进行四舍五入的方法。分享给大家供大家参考。具体方法如下: 语法:round(x,prec) 参数...

apache和php之间协同工作的配置经验分享

php在当今一个不陌生的网络技术名词,想到网站或者web可能大多数开发者都会想到php,一个既免费又开源,既容易又实用等一些好处才拥有了世界上很多IT技术人员的青睐,我是一名JAVA开发...