本文以二当家的登录和示例演示了腾讯qq、新浪微博和人人网的第三方账号绑定。
0、请不要问“在不在”之类的问题,有问题直接问!1、学生或暂时没有工作的童鞋,整站资源免费下载!2、¥9.9充值终身VIP会员,加我微信,826096331 拉你进VIP群学习!3、程序员加油,技术改变世界。在线 充值
请直接登陆官方网站查看演示
目前可用登录平台为:腾讯QQ,腾讯微博,新浪微博,网易微博,人人网,360,豆瓣,Github,Google,MSN,点点,淘宝网,百度,开心网,搜狐。
包含的文件
ThinkSDK/ThinkOauth.class.php //SDK基类,主要用于Oauth的认证,所有平台的SDK均需要继承此类
ThinkSDK/sdk/DiandianSDK.class.php //(点点SDK)
ThinkSDK/sdk/DoubanSDK.class.php //(豆瓣SDK)
ThinkSDK/sdk/GithubSDK.class.php //(Github SDK)
ThinkSDK/sdk/GoogleSDK.class.php //(Google SDK)
ThinkSDK/sdk/MsnSDK.class.php //(MSN SDK)
ThinkSDK/sdk/QqSDK.class.php //(腾讯QQ SDK)
ThinkSDK/sdk/RenrenSDK.class.php //(人人网SDK)
ThinkSDK/sdk/SinaSDK.class.php //(新浪微博SDK)
ThinkSDK/sdk/T163SDK.class.php //(网易微博SDK)
ThinkSDK/sdk/TaobaoSDK.class.php //(淘宝网SDK)
ThinkSDK/sdk/TencentSDK.class.php //(腾讯微博SDK)
ThinkSDK/sdk/X360SDK.class.php //(360 SDK)
ThinkSDK/sdk/BaiduSDK.class.php (百度SDK)
ThinkSDK/sdk/KaixinSDK.class.php (开心网SDK)
ThinkSDK/sdk/SohuSDK.class.php (搜狐SDK)
返回地址
$SITE_URL = "http://www.erdangjiade.com/";
define('URL_CALLBACK', "" . $SITE_URL . "Index/callback?type=");
配置格式
return array(
//腾讯QQ登录配置
'THINK_SDK_QQ' => array(
'APP_KEY' => '101205983', //应用注册成功后分配的 APP ID
'APP_SECRET' => '9380197af5efd5c47bc561323047ccec', //应用注册成功后分配的KEY
'CALLBACK' => URL_CALLBACK . 'qq',
),
//新浪微博配置
'THINK_SDK_SINA' => array(
'APP_KEY' => '120967331', //应用注册成功后分配的 APP ID
'APP_SECRET' => '8aa15f65593eaf9e787baec45a801296', //应用注册成功后分配的KEY
'CALLBACK' => URL_CALLBACK . 'sina',
),
//人人网配置
'THINK_SDK_RENREN' => array(
'APP_KEY' => '', //应用注册成功后分配的 APP ID
'APP_SECRET' => '', //应用注册成功后分配的KEY
'CALLBACK' => URL_CALLBACK . 'renren',
)
);
接入登录方法
添加ThinkPHP扩展,将整个ThinkSDK目录放入到ThinkPHP的扩展目录下~Extend/Library/ORG/~。
添加SDK配置,按以上配置格式在项目配置中添加对应的SDK配置。(可参考DEMO中的配置文件)
跳转到授权页面(可参考DEMO中的Index/login方法)
import("ORG.ThinkSDK.ThinkOauth")//导入SDK基类
$sdk=ThinkOauth::getInstance($type)//获取SDK实例
redirect($sdk->getRequestCodeURL())//跳转到授权页面
本SDK工具包将持续更新,使用的过程中遇到问题可以在下面直接评论。你也可以加入二当家的讨论群:368848856讨论交流
表sucai_user
CREATE TABLE IF NOT EXISTS `sucai_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`nickname` varchar(30) DEFAULT NULL,
`pwd` varchar(50) NOT NULL,
`email` varchar(30) DEFAULT NULL,
`avatar` varchar(200) DEFAULT '',
`logintime` int(10) NOT NULL,
`loginip` varchar(30) DEFAULT NULL,
`qq` varchar(250) DEFAULT NULL,
`sina` varchar(250) DEFAULT NULL,
`renren` varchar(250) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
qq第三方申请地址:QQ互联
QQ互联申请应用注意点:
- qq登录按钮必须放在首页头部,否则不通过
- 在绑定页面必须显示昵称,演示DEMO绑定模板bind.html里面已加入nickname
提示:openid作为用户的身份识别的唯一id,必须保存在用户表里面,作为下一次识别。access_token也可以保存在用户表user里面,可以作相关API处理,比如发送微博。qq互联测试地址:http://connect.qq.com/sdk/webtools/
友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群