//本代码并非完美,也许存在不良之处,高手请多指点,请勿吐槽!
//作者 小曾 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 可加我一起交流
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。