欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

QQ登陆绑定代码

程序员文章站 2022-06-14 22:47:44
...
QQ登陆绑定代码

首先我们去QQ互联下载SDK PHP版源码
下载后,把源码上传到你的网站,打开进行配置

腾讯Qq互联开发平台最后升级2015-4-20 回调地址必须完整一字不差
假如腾讯管理那边写的回调地址 http://www.qq839.com/index.php
那么你的网站配置 必须为 http://www.qq839.com/index.php 一字不可错
QQ登陆绑定代码
配置好之后把API目录打开,移至第三方类库
我取名Connect 原来目录是Connect2.1 我们去这个(点)防止引入错误 当然你可以命名为QQAPI什么的,这个由你们自己定
目录 \ThinkPHP\Extend\Vendor 这个根据自己的开发习惯放至
放完了,写控制器Login//本代码并非完美,也许存在不良之处,高手请多指点,请勿吐槽!
//作者 小曾 Qq839024615 可加我一起交流
//qq登陆
public function qq_login(){
vendor('Connect.qqConnectAPI');
$qc = new QC();
$qc->qq_login();
}
//qq验证登陆
public function qq_callback(){
vendor('Connect.qqConnectAPI');
$qc = new QC();
$qc->qq_callback();
$qc->get_openid();
$this->success("QQ登陆成功",U('Login/qq_user'));
}
//qq取资料
public function qq_user(){
vendor('Connect.qqConnectAPI');
$qc = new QC();
$arr = $qc->get_user_info();

//判断是否绑定
$Q=M('QQ绑定数据库');
$where['openid']=$_SESSION['QC_userData']['openid'];
$isqq=$Q->where($where)->find();
if($isqq){
//如果已绑定某用户,则用uid取用户名直接session到此用户
}else{
//如果未绑定则跳转到完善用户信息
session('head',$arr['figureurl_2']);
session('nick',$arr['nickname']);
$this->success("请完善用户信息",U('Login/reg_qq'));
}
}
//qq注册完善信息
public function reg_qq(){
if(IS_POST){
$user=$this->_post('uname');//用户名
$pwd=$this->_post('pwd');//密码
$repwd=$this->_post('repwd');//重复密码
$ip=get_client_ip();

$User=M("User");

//判断用户是否存在
$whereus['user']=$user;
if($User->where($whereus)->find()){
$this->error('对不起,此用户名已存在,请更换!');
}

//这是用户信息,根据你自己的数据库定
$data['user']=$user;
$data['pwd']=md5($pwd);
$data['nick']=session('nick');
$data['head']=session('head');
$data['reg_time']=time();
$data['login_time']=time();
$data['reg_ip']=$ip;
$data['dow_score']=20;
$data['login_ip']=$ip;
$isus=$User->add($data);

if($isus){
//绑定qq
$Q=M("Qq_user");
$Qdata['access_token']=$_SESSION['QC_userData']['access_token'];
$Qdata['openid']=$_SESSION['QC_userData']['openid'];
$Qdata['time']=time();
$Qdata['uid']=$isus;
$Q->add($Tdata);
$this->success('注册成功,请使用QQ登陆或账号密码登陆!',U('Index/index'));
}else{
$this->error('注册成功,但QQ绑定失败,请登陆后再次绑定!');
}
}else{
$this->display();
}

}
//本代码并非完美,也许存在不良之处,高手请多指点,请勿吐槽!
//作者 小曾 Qq839024615 可加我一起交流

AD:真正免费,域名+虚机+企业邮箱=0元