thinkcmf 简易静默获取微信openid

请求函数

    public function get_code(){
        //获取域名
        $yuming=cmf_get_option('site_info')['site_yuming'];
        //获取appid
        $appid=cmf_get_option('site_info')['site_appid'];
        //回调地址
        $redirect_uri='http%3a%2f%2f'.$yuming.'%2fportal%2findex%2fget_openid';
        $url="https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_uri."&response_type=code&scope=snsapi_base&state=123#wechat_redirect?".time();
        //跳转微信接口
        Header("Location:$url");

    }

回调函数

public function get_openid(){
        $data1=input();//接收回调信息
        $appid=cmf_get_option('site_info')['site_appid'];
        $secret=cmf_get_option('site_info')['site_secret'];
        //请求openid接口
        $data=file_get_contents("https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$secret."&code=".$data1['code']."&grant_type=authorization_code");
        //处理信息
        $data=json_decode($data,true);
        $openid='';
        $count=1;
        if(empty($data['openid'])){
            $openid='j'.time();
        }else{
            $openid= $data['openid'];
            if(!Db::name('member')->where('openid',$openid)->find()){
                Db::name('member')->insert(['openid'=>$openid,'time'=>time()]);
            }else{
                $count=2;
            }
        }

        $url='http://'.cmf_get_option('site_info')['site_yuming'].'/dist/index.html?openid='.$openid.'&count='.$count;
        //跳转项目 入口地址
        $this->redirect($url);
    }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值