微信小程序结合ThinkPHP5授权登陆后获取手机号


Posted in PHP onNovember 23, 2021

1.在我们授权登陆后会获取到用户的 sessionKey 这个是获取手机号不可分割的一部分

上代码

wxml:

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">获取手机号</button>

js:当我们在调用这个方法的时候可以在控制台输出一下 e 下方用红框框起来的两个也是获取手机号不可分割的一部分

微信小程序结合ThinkPHP5授权登陆后获取手机号

getPhoneNumber: function (e) {
        var that = this;
        console.log(e.detail.errMsg == "getPhoneNumber:ok");
        if (e.detail.errMsg == "getPhoneNumber:ok") {
            wx.request({
                url: 'http://www.phone.com/test/Seek/getPhone',
                data: {
                    encryptedData: e.detail.encryptedData,
                    iv: e.detail.iv,
                    sessionKey: that.data.session_key,
                },
                method: "post",
                success: function (res) {
                    console.log(res);
                }
            })
        }
      },

然后就是Think PHP 5 的后台代码了,再写代码前 需要先下载一个官方提供的文件夹

网址:服务端获取开放数据 | 微信开放文档

微信小程序结合ThinkPHP5授权登陆后获取手机号

 下载好后有四种语言的 我们只要PHP的

微信小程序结合ThinkPHP5授权登陆后获取手机号

 将PHP这个文件夹放到你的 Think PHP 5 的 app 目录下,记得更改文件夹名字,就像这个样

微信小程序结合ThinkPHP5授权登陆后获取手机号

接下来 给 WXBizDataCrypt.php 增加命名空间和引入ErrorCode.php 文件

微信小程序结合ThinkPHP5授权登陆后获取手机号 

接下来 在你的控制器中 引入  WXBizDataCrypt.php

use app\libs\WXBizDataCrypt;

然后就可以写 PHP 代码了

public function getPhone(){
        $encryptedData = input('encryptedData');
        $iv = input('iv');
        $sessionKey = input('sessionKey');
        $appID = config('appID');
 
        $data = null;
        $pc = new WXBizDataCrypt($appID, $sessionKey);
        $errCode = $pc->decryptData($encryptedData, $iv, $data );
        $data = json_decode($data,true);
        return json($data);
    }

最后在回到小程序运行一遍 就可以看到了

微信小程序结合ThinkPHP5授权登陆后获取手机号

到此这篇关于微信小程序结合ThinkPHP5授权登陆后获取手机号的文章就介绍到这了,更多相关小程序 获取手机号内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
漂亮但不安全的CTB
Oct 09 PHP
一些常用的php简单命令代码集锦
Sep 24 PHP
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
Oct 11 PHP
php处理json时中文问题的解决方法
Apr 12 PHP
2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题
Apr 08 PHP
PHP中把对象数组转换成普通数组的方法
Jul 10 PHP
php 生成加密公钥加密私钥实例详解
Jun 16 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
Jun 27 PHP
PHP数据库操作二:memcache用法分析
Aug 16 PHP
PHP使用pdo连接access数据库并循环显示数据操作示例
Jun 05 PHP
laravel实现按月或天或小时统计mysql数据的方法
Oct 09 PHP
用Laravel轻松处理千万级数据的方法实现
Dec 25 PHP
PHP遍历数组的6种方式总结
Nov 17 #PHP
关于PHP数组迭代器的使用方法实例
php双向队列实例讲解
Nov 17 #PHP
如何解决php-fpm启动不了问题
Nov 17 #PHP
一次项目中Thinkphp绕过禁用函数的实战记录
php修改word的实例方法
Nov 17 #PHP
PHP获取学生成绩的方法
Nov 17 #PHP
You might like
php下实现农历日历的代码
2007/03/07 PHP
Yii结合CKEditor实现图片上传功能
2014/06/13 PHP
php实现读取手机客户端浏览器的类
2015/01/09 PHP
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
2020/03/18 PHP
javascript 学习之旅 (1)
2009/02/05 Javascript
jQuery实战之品牌展示列表效果
2011/04/10 Javascript
Jquery增加鼠标中间功能mousewheel的实例代码
2013/09/05 Javascript
自定义的一个简单时尚js下拉选择框
2013/11/20 Javascript
extjs4 treepanel动态改变行高度示例
2013/12/17 Javascript
jQuery针对各类元素操作基础教程
2014/08/29 Javascript
Bootstrap弹出带合法性检查的登录框实例代码【推荐】
2016/06/23 Javascript
jQuery实现移动端手机商城购物车功能
2016/09/24 Javascript
简单实现node.js图片上传
2016/12/18 Javascript
jQuery动态生成不规则表格(前后端)
2017/02/21 Javascript
js禁止浏览器的回退事件
2017/04/20 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
2017/10/12 Javascript
js 实现复选框只能选择一项的示例代码
2018/01/23 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
python排序函数sort()与sorted()的区别
2018/09/18 Python
Python根据文件名批量转移图片的方法
2018/10/21 Python
Python实现的在特定目录下导入模块功能分析
2019/02/11 Python
python基于Selenium的web自动化框架
2019/07/14 Python
Python sys模块常用方法解析
2020/02/20 Python
django中related_name的用法说明
2020/05/20 Python
Chinti & Parker官网:奢华羊绒女装和创新针织设计
2021/01/01 全球购物
班主任寄语大全
2014/04/04 职场文书
个人评语大全
2014/05/04 职场文书
2014财务人员自我评价范文
2014/09/21 职场文书
班子成员四风问题自我剖析材料
2014/09/29 职场文书
倡议书的格式写法
2015/04/28 职场文书
水浒传读书笔记
2015/06/25 职场文书
投诉书范文
2015/07/02 职场文书
Python上下文管理器Content Manager
2021/06/26 Python
SpringRetry重试框架的具体使用
2021/07/25 Java/Android
JavaScript严格模式不支持八进制的问题讲解
2021/11/07 Javascript
Android基于Fresco实现圆角和圆形图片
2022/04/01 Java/Android