码迷,mamicode.com
首页 > Web开发 > 详细

在你的网站实现qq登陆(php)

时间:2015-10-09 13:49:40      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

这个qq的oauth2.1有个坑,坑了我半天,后来查了不少资料总算弄通了,现在把详细步骤记录下来。

步骤一、登陆http://connect.qq.com/

 

技术分享
 
 
步骤二、创建应用。我创建的是wenwutest这个应用。具体的创建如下图所示:
 
技术分享
 
要特别注意这个回调地址。首先这个回调地址必须与网站地址的根域名写的一样(http://m.mumayi.com),其次,这里写的这个地址一定是登陆成功后回调的地址。不能再像oauth2.0那样再写个根域名就可以了,我这里就掉在这个坑里半天。
 
步骤3、下载php的sdk
 
下载地址:http://wiki.connect.qq.com/sdk%E4%B8%8B%E8%BD%BD
我下的是php oauth2.1的版本
 
技术分享
 
下好之后,直接将整个目录放到你的服务器。如下图所示:
 
技术分享
 
步骤四、配置sdk
 
直接访问install文件夹,填写相关信息如下图所示:
技术分享
 
填写你的应用的appid与appkey和callback地址。这个appid和appkey分别是下图所示的两个值:
技术分享
 
最后的callback地址,一定要注意,一定要和你创建应用时候的callback地址一模一样,否则会出现"ilegal uri"错误。这里我创建应用时的callback地址是:http://m.mumayi.com/qq/example/oauth/callback.php。所以我在这里也要填写这个地址。填写完成后,点击"配置”就会配置成功了。
 
步骤五、访问example/index.html,点击按钮,如下所示
技术分享
 
这样就登陆了,登录成功后跳转到我们之前设置好的callback地址。
官方sdk的callback.php文件内容如下:
 
<?php
require_once("../../API/qqConnectAPI.php");
$qc = new QC();
echo $qc->qq_callback();    //返回的验证值
echo <hr>;
echo $qc->get_openid();        //qq分配的用户id

代码很简单。其中重要的是这个openid的值。一般可以将这个openid和我们现有的用户表做个绑定(如果用户有账号,如果没有,可以完善信息)。

到这里登录就基本完成了。下面我演示下如何获取用户的基本信息,代码很简单:

<?php

/*
 *调用接口代码
 *
 **/
require_once("../../API/qqConnectAPI.php");
$qc = new QC();
$arr = $qc->get_user_info();


echo <meta charset="UTF-8">;
echo "<p>";
echo "Gender:".$arr["gender"];
echo "</p>";
echo "<p>";
echo "NickName:".$arr["nickname"];
echo "</p>";
echo "<p>";
echo "<img src=\"".$arr[figureurl]."\">";
echo "<p>";
echo "<p>";
echo "<img src=\"".$arr[figureurl_1]."\">";
echo "<p>";
echo "<p>";
echo "<img src=\"".$arr[figureurl_2]."\">";
echo "<p>";
echo "vip:".$arr["vip"];
echo "</p>";
echo "level:".$arr["level"];
echo "</p>";
echo "is_yellow_year_vip:".$arr["is_yellow_year_vip"];
echo "</p>";

?>
 
运行以上代码显示效果如下:
 
技术分享
 
是不是用户名和头像都得到了,做登录够用了吧。想怎么扩展自己去写吧。
 
希望能帮助到有需要的朋友,欢迎留言和我交流。

在你的网站实现qq登陆(php)

标签:

原文地址:http://www.cnblogs.com/doubilaile/p/4863547.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!