分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

thinkphp3.2开发网页实现第三方登录

发布时间:2023-09-06 01:17责任编辑:熊小新关键词:thinkphp

1.在要添加登录的html里添加登录按钮:

  <a href="{:U(‘Public/login/‘,array(‘type‘=>‘weixin‘))}"><img src="__IMG__/weixin.png" alt="微信按钮" />   </a>(这里只写了微信,QQ,微博...只需修改type值与图片即可)

2.登录方法:

  public function login($type=null) {

       empty($type) && $this->error(‘参数错误‘);

       //加载ThinkOauth类并实例化一个对象

       import("ORG.ThinkSDK.ThinkOauth");

       //跳转到授权页

       redirect($sns->getRequestCodeURL());

  }

  //授权回调地址

  public function callback(){

       (empty($type) || empty($code)) && $this->error(‘参数错误‘);

       //加载ThinkOauth类并实例化一个对象

       import("ORG.ThinkSDK.ThinkOauth");

       $sns=ThinkOauth::getInstance($type);

       //腾讯微博需传递参数

       $extend=null;

       if($type==‘tencent‘){

            $extend=array(‘openid‘=>$this->_get(‘openid‘),‘openkey‘=>$this->_get(‘‘openkey));

       }

      //请妥善保管这里获取到的Token信息,方便以后API调用

      //调用方法,实例化SDK对象的时候直接作为构造函数的第二个参数传入

     //如: $qq = ThinkOauth::getInstance(‘qq‘, $token);

     $token = $sns->getAccessToken($code , $extend);

     //获取当前登录用户信息
     if(is_array($token)){
          $user_info = A(‘Type‘, ‘Event‘)->$type($token);

          echo("<h1>恭喜!使用 {$type} 用户登录成功</h1><br>");

          echo("授权信息为:<br>");
         dump($token);
         echo("当前登录用户信息为:<br>");
         dump($user_info);
     }
???}

3.下载sdk,把sdk文件夹和ThinkOauth.class.php放在ThinkPHP\Library\Org\ThinkSDK下

4.在config.php加:
  //微信登录
  ‘THINK_SDK_WEIXIN‘ => array(
    ‘APP_KEY‘ => ‘‘, //应用注册成功后分配的 APP ID
    ‘APP_SECRET‘ => ‘‘, //应用注册成功后分配的KEY
    ‘CALLBACK‘ => URL_CALLBACK . ‘weixin‘,
  ),
  //腾讯QQ登录配置
  ‘THINK_SDK_QQ‘ => array(
    ‘APP_KEY‘ => ‘‘, //应用注册成功后分配的 APP ID
    ‘APP_SECRET‘ => ‘‘, //应用注册成功后分配的KEY
    ‘CALLBACK‘ => URL_CALLBACK . ‘qq‘,
  ),
?
  //新浪微博配置
  ‘THINK_SDK_SINA‘ => array(
    ‘APP_KEY‘ => ‘‘, //应用注册成功后分配的 APP ID
    ‘APP_SECRET‘ => ‘‘, //应用注册成功后分配的KEY ?
    ‘CALLBACK‘ => URL_CALLBACK . ‘sina‘,
  )


?5.调试完成

       

thinkphp3.2开发网页实现第三方登录

原文地址:http://www.cnblogs.com/fortitude526/p/6946893.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved