资讯专栏INFORMATION COLUMN

PHP实现微信开放平台扫码登录源码下载

2bdenny / 2080人阅读

摘要:下载演示地址效果图首先到微信开放平台申请获取到和,前台显示页面如下处理代码页面构造函数,获取扫码登录不需要该语义理解需要本地写入网站应用生成扫码登录的生成的获取用户基本信息授权的获取未关注用户,为临时获取下载演示地址

下载演示地址:http://www.erdangjiade.com/ph...
效果图:

1、首先到微信开放平台申请https://open.weixin.qq.com/ 获取到appid和APPSECRET,前台显示页面如下
 
 
     
         
     
     
         
         
         
     

2、PHP处理代码页面
/* 
    require_once("weixin.class.php"); 
    $weixin = new class_weixin(); 
*/ 
 
define("APPID",        "wx19ba77624e083e08"); 
define("APPSECRET",    "c1a56a5c4247dd44c320c9719c5ceb90"); 
 
class class_weixin 
{ 
    var $appid = APPID; 
    var $appsecret = APPSECRET; 
 
    //构造函数,获取Access Token 
    public function __construct($appid = NULL, $appsecret = NULL) 
    { 
        if($appid && $appsecret){ 
            $this->appid = $appid; 
            $this->appsecret = $appsecret; 
        } 
 
        //扫码登录不需要该Access Token, 语义理解需要 
        //1. 本地写入  
        $res = file_get_contents("access_token.json"); 
        $result = json_decode($res, true); 
        $this->expires_time = $result["expires_time"]; 
        $this->access_token = $result["access_token"]; 
 
        if (time() > ($this->expires_time + 3600)){ 
            $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->appsecret; 
            $res = $this->http_request($url); 
            $result = json_decode($res, true); 
            $this->access_token = $result["access_token"]; 
            $this->expires_time = time(); 
            file_put_contents("access_token.json", "{"access_token": "".$this->access_token."", "expires_time": ".$this->expires_time."}"); 
        } 
    } 
 
    /* 
    *  PART1 网站应用 
    */ 
 
    /* 
    header("Content-type: text/html; charset=utf-8"); 
    require_once("wxopen.class.php"); 
    $weixin = new class_weixin(); 
    if (!isset($_GET["code"])){ 
        $redirect_url = "http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]; 
        $jumpurl = $weixin->qrconnect($redirect_url, "snsapi_login", "123"); 
        Header("Location: $jumpurl"); 
    }else{ 
        $oauth2_info = $weixin->oauth2_access_token($_GET["code"]); 
        $userinfo = $weixin->oauth2_get_user_info($oauth2_info["access_token"], $oauth2_info["openid"]); 
        var_dump($userinfo); 
    } 
    */ 
    //生成扫码登录的URL 
    public function qrconnect($redirect_url, $scope, $state = NULL) 
    { 
        $url = "https://open.weixin.qq.com/connect/qrconnect?appid=".$this->appid."&redirect_uri=".urlencode($redirect_url)."&response_type=code&scope=".$scope."&state=".$state."#wechat_redirect"; 
        return $url; 
    } 
 
    //生成OAuth2的Access Token 
    public function oauth2_access_token($code) 
    { 
        $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$this->appid."&secret=".$this->appsecret."&code=".$code."&grant_type=authorization_code"; 
        $res = $this->http_request($url); 
        return json_decode($res, true); 
    } 
 
    //获取用户基本信息(OAuth2 授权的 Access Token 获取 未关注用户,Access Token为临时获取) 
    public function oauth2_get_user_info($access_token, $openid) 
    { 
        $url = "https://api.weixin.qq.com/sns/userinfo?access_token=".$access_token."&openid=".$openid."&lang=zh_CN"; 
        $res = $this->http_request($url); 
        return json_decode($res, true); 
    }

下载演示地址:http://www.erdangjiade.com/ph...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/86843.html

相关文章

  • PHP实现微信开放平台扫码登录源码下载

    摘要:下载演示地址效果图首先到微信开放平台申请获取到和,前台显示页面如下处理代码页面构造函数,获取扫码登录不需要该语义理解需要本地写入网站应用生成扫码登录的生成的获取用户基本信息授权的获取未关注用户,为临时获取下载演示地址 下载演示地址:http://www.erdangjiade.com/ph...效果图:showImg(https://segmentfault.com/img/bVKlk...

    RaoMeng 评论0 收藏0
  • 微信开放平台扫码登录获取用户基本信息!附可用demo

    摘要:微信开放平台提供了网站扫码登录的接口,用于获取用户基本信息头像,昵称方便网站快速接入微信登录,快捷登录。需要使用登录接口,需要成为微信开放平台认证开发者元才可以获得这个接口权限。 微信开放平台提供了网站扫码登录的接口,用于获取用户基本信息(头像,昵称)方便网站快速接入微信登录,快捷登录。需要使用登录接口,需要成为微信开放平台认证开发者(300元)才可以获得这个接口权限。 准备工作: 1...

    flybywind 评论0 收藏0
  • 网站接入微信扫码登录并获取用户基本信息(微信开放平台)

    摘要:现在的网站基本都接入微信登陆了,就好像下面这样的。只需要用微信扫一下二维码,这个网站就可以展示你的微信昵称和头像,免去注册账号和输入密码登录的步骤,还免去设置头像和昵称的步骤,所以是挺方便的。 现在的网站基本都接入微信登陆了,就好像下面这样的。 showImg(https://segmentfault.com/img/bVbc4jV?w=523&h=508); 只需要用微信扫一下二维码...

    tangr206 评论0 收藏0
  • 通过小程序实现网站扫码登录!每年都可以省 300 块...代替微信开放平台和服务号的登陆模式!

    摘要:微信开放平台要认证开发者,需要块年,微信服务号也需要提交企业资料认证,需要块年。免费的方法来了既然微信开放平台和微信认证的服务号每年都需要块认证费,个人学习不舍得,没资料,那么咱们把矛头指向微信小程序了。 我们知道,要接入微信登陆有两种方式 1、微信开放平台2、微信服务号 这两种方式均可生成带参数的二维码,然后扫码获取用户基本信息的,所以我们可以在网站上用这两种方式开发网站的扫码登录,...

    rickchen 评论0 收藏0
  • Django使用Social-Auth实现微信第三方网站扫码登录

    摘要:前言之前让网页公司制作新官网的时候规划有第三方账号的登录功能,但由于当时的一些开放平台申请步骤比较繁琐尤其是微信开放平台,所以一直拖延着,到了最近只能自己添加相关的功能。 前言 之前让网页公司制作新官网的时候规划有第三方账号的登录功能,但由于当时的一些开放平台申请步骤比较繁琐(尤其是微信开放平台),所以一直拖延着,到了最近只能自己添加相关的功能。 由于是刚接触Python和Django...

    fox_soyoung 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<