微信小程序数据储存到php,微信小程序通过php获取openid 存储数据库

准备工作

1.获取小程序appid,aposecret:(在微信公众平台获取)

2.一个服务器(在这里用本地搭建集成环境phpstudy8.0)

使用phpstudy8.0教程

3.微信开发者工具

开始

打开微信开发者工具,点击新建项目,输入在微信公众平台获取的appid(一定要输入正确的appid,要不然后面会出现问题),点击新建完成。

6883a44a4c36721e63eea5c4867f9f5a.png

进入项目,在pages新建页面,然后在xx.wxml页面,加上以下代码。

post data

然后在xx.js页面,加上以下代码。

Page({

postData: function () {

wx.login({

success: function(res){

console.log(res.code)

wx.request({

url: 'https://www.umserver.club/user.php',

data:{

code: res.code

},

success: function(res){

console.log("传递成功")

}

})

}

})

},

})

在小程序端代码已经写好了,现在从php文件下手了,在php文件只要加上以下代码。

$servername="localhost";//服务器地址,默认localhost

$username="root";//数据库用户名

$password="123456";//数据库密码

$dbname="user";数据库名

$code=$_GET["code"];

$appid='xxxxxxxxxxx';//小程序appid

$secret='xxxxxxxxxxxxxxxxxxxx';//小程序aposecret

$url="https://api.weixin.qq.com/sns/jscode2session?appid=$appid&secret=$secret&js_code=$code&grant_type=authorization_code";

$Info=file_get_contents($url);

$jsInfo=json_decode($Info);

$arry=get_object_vars($jsInfo);

$secret=$arry['session_key'];

$openid=$arry['openid'];

$conn=new mysqli($servername,$username,$password,$dbname);

if($conn->connect_error){

die("连接失败".$conn->connect_error);

}

$sql="INSERT INTO getuser(secret,openid) VALUES('$secret','$openid')";//getuser是数据表

if($conn->query($sql)===TRUE){

echo "插入成功";

}

else{

echo "插入失败".$conn->error;

}

?>

代码全部写好了,接下来在数据库创建数据表,添加字段就可以了。

9851c8aab58248dc1632b1665b51c1e8.png

然后回到微信开发者工具,在菜单中找到详情按钮,在下面找到不校验合法域名,勾选上(在本地服务器测试,可以不需要正常的域名限制)。

3f23b11cb599d8e8d0e410a4eeca9aa0.png

完成后,在模拟器点击按钮。

7e8629ed9e8294324ed3a45fc79b9472.png

此时,在控制面板上出现以下信息,说明code值成功传给php页面。

66cbf9ad3a8717723d2da3168d651b10.png

最后回到数据库中,查看openid,session_key 有没有成功存储到数据库中,如果出现以下数据,说明存储成功。

48c4e02fe931c8015210f7bd2df0cb39.png

希望我的经验能帮到你,谢谢!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值