QQ登陆绑定代码

浏览:5040 发布日期:2015/03/30 分类:功能实现 关键字: QQ互联 QQ登陆 QQ绑定 绑定QQ 梦雪网络
QQ登陆绑定代码

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

腾讯Qq互联开发平台最后升级2015-4-20 回调地址必须完整一字不差
假如腾讯管理那边写的回调地址 http://www.qq839.com/index.php
那么你的网站配置 必须为 http://www.qq839.com/index.php 一字不可错

配置好之后把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 可加我一起交流
评论( 相关
后面还有条评论,点击查看>>