分享好友 资讯首页 资讯分类 切换频道
【PHP+微信开发】之微信扫码登录
2024-12-25 15:13  浏览:59

目录

一、数据表

二、获取token

三、生成二维码

四、扫码,并接收回调

五、检测二维码是否扫描成功


微信扫码登录总体说明:先获取token和ticket,通过微信生成二维码接口生成二维码,把二维码信息添加到数据表中,用户扫码时检测二维码扫描状态,扫描成功后更新二维码状态,跳转页面。

相关参考

 微信开放文档

qrcord表,用户存储二维码信息,每生成一个二维码生成一条记录,通过openid字段判断是否扫描成功,如果openid不为空说明扫描成功,否则扫描失败或者是一条新的二维码,id字段就是下面使用的scene_id,此字段一直存在,作为操作二维码的关键字段。

idaddtimeopenidcreatetimeupdatetimeID二维码生成时间微信id创建时间更新时间

逻辑说明:请求微信接口获取token,把获取到token存储到服务器上,并把当前时间一并存储,用于判定token是否失效(因为token是有失效时间的,在调用此方法的时候,把当前时间和token数据库存储的时间(就是获取token的时间)对比,如果当前时间 > 数据库存储时间+7000,单位是秒,说明原来的token已经失效了,需要再重新获取token,并把新的存储到数据库中。

 
 

逻辑说明:① 在生成二维码前,首先生成一条数据插入qrcode表,用于记录二维码状态,数据包括二维码生成时间,插入后返回自增主键ID,把返回的ID赋给变量$scene_id,② 开始生成二维码:拼凑参数:二维码有效时间、二维码类型、二维码详细信息,拼接URL,请求(两个)微信接口生成二维码。

 

前端代码:用标签直接显示二维码,隐藏域为scene_id,用于查询二维码信息(包括二维码扫描状态)。

 
 

说明:生成二维码后,用户可以扫描二维码,如果扫描之后,微信服务器会收到,并返回信息,就是返回到事先填写在微信公众号上的回调地址,注意这个地址是可以公开访问的,不能有验证,否则微信服务器无法返回消息给回调地址。(回调地址是在微信后台填写的,位置:设置与开发->基本配置->服务器配置->服务器地址(URL)

回调方法处理逻辑:接收微信服务器返回的消息,返回的消息格式默认是xml,需要把它转换成对象格式,返回的信息包括EventKey,FormUserName,ToUserName,Event。根据scene_id修改qrcode表信息,主要是添加openid,表示该二维码已被用户扫码成功。

 
 

逻辑说明:使用函数每隔2秒执行一次查询一次二维码扫描状态,在后端通过scene_id查询qrcode表里的openid,如果对应的openid列为空,说明这是一个新的二维码,还没有用户扫描,如果对应的openid列不为空说明已经被扫描,扫码成功,那就推送消息并跳转页面。

前端代码 

 

后端代码

    以上就是本篇文章【【PHP+微信开发】之微信扫码登录】的全部内容了,欢迎阅览 ! 文章地址:http://w.yusign.com/news/4234.html 
     资讯      企业新闻      行情      企业黄页      同类资讯      首页      网站地图      返回首页 述古往 http://w.yusign.com/mobile/ , 查看更多   
最新新闻
WPS Office 2021 Professional专业版v11.8.2.11500 免费安装版手机wps「WPS Office 2021 Professional专业版v11.8.2.11500
WPS手机离线版是由金山开发的一款手机办公软件,该款软件可以在用户便捷的时候能够起到快速办公的服务,因为软件已经修改为离线
10款智能手机辐射值排行榜智能手机排行榜前十名「10款智能手机辐射值排行榜」
[导读]尽管辐射值与手机的功能没有直接的关系,但相比非智能手机和中低端手机而言,功能更出色的智能手机似乎在辐射值的指标上更
12头鲸鱼搁浅台州牵动人心,抖音直播全程直击救援行动手机凤凰网「12头鲸鱼搁浅台州牵动人心,抖音直播全程直击救援行动」
一场针对12头鲸鱼的救援行动,牵动了全国网友的心。7月6日上午8点03分,头门港大桥附近的滩涂上12头领航鲸在浙江台州水域搁浅,
贝尔金的Magsafe磁吸支架与普通支架横屏,是智商税么?车载手机支架「贝尔金的Magsafe磁吸支架与普通支架横屏,是智商税么?」
自从用了iphone12PM,因为magsafe功能,情不自禁地物尽其用,于是买了一个magsafe的贝尔金磁吸手机支架。用了一段时间贝尔金磁吸
苹果手机怎么关闭关闭手机「苹果手机怎么关闭」
苹果手机作为现代智能设备的代表,其操作简便、功能丰富,深受用户喜爱。然而,对于新手用户来说,如何正确地关闭苹果手机可能是
围棋的业余段位怎么区分,又有什么用呢,你知道吗?手机搜狐网「围棋的业余段位怎么区分,又有什么用呢,你知道吗?」
对于学习围棋的孩子来讲,围棋教育的功能得以充分体现,其思维方式将会影响孩子的一生,并且成为他们的一种业余爱好。继续学习下
为何手机上聊天记录删除后还能被恢复?微信回应手机「为何手机上聊天记录删除后还能被恢复?微信回应」
  中新网4月29日电 为什么手机上的聊天记录删除后还能被恢复?微信官方公号微信派今日对此回应称,微信不留存任何用户的聊天记
不可不知的13个手机摄影技巧手机摄影「不可不知的13个手机摄影技巧」
  1.千万别手抖 精神要抖擞  手机拍摄一个常常出现的问题就是拍摄模糊了,因为手机对焦过程相比相机要慢,而由于感光元件尺
华为穿戴华为手机官网「华为穿戴」
价格仅供参考,具体价格请以华为商城展示为准。以上页面中的产品图片、视频及屏幕内容仅作示意,实物产品效果(包括但不限于外观
steam手机版正版steam手机版下载「steam手机版正版」
steam手机版作为一款非常实用的软件,专为移动设备的用户所打造,在这里可以与自己的好友交流游戏,还能够直接购买游戏,随时对