详细流程可以去新浪微博开放平台官网查看
http://open.weibo.com/
大概流程:
去新浪微博开放平台官网验证网站并提交网站资料,审核通过后创建网站应用,网站应用审核通过后会有app key, 然后所有新浪微博账号的数据都是通过这个去获取。
新浪微博开放平台中一键有写好的demo,下载地址:http://open.weibo.com/wiki/SDK#PHP_SDK
都是封装好的函数,直接调用就可以实现各种功能了。
一键登录代码:
//一键登录图片按钮,给oa链接传送参数appkey 和 网站回调地址
//回调地址代码
getAccessToken( 'code', $keys ) ;
} catch (OAuthException $e) {}
}
//通过token获取uid
if ($token) {
$_SESSION['token'] = $token;
setcookie('weibojs_' . $o->client_id, http_build_query($token));
$c = new saetclientv2(WB_AKEY,WB_SKEY,$token['access_token']);
$usr_info=$c->show_user_by_id($token['uid']); //微博sdk方法获取用户的信息 ,通过uid获取用户信息
$uid = $usr_info['id'];
$name = $usr_info['name'];
$head = $usr_info['profile_image_url'];
//通过微博uid查询之前有没有登录过
if($u=$dbh->query("select * from user where other_id='{$uid}'")->fetch()){
session_start();
$_SESSION['account']=$u['account'];
$_SESSION['account_id']=$id;
header('Location:../../iphp.php');
exit;
}
?>
//未登录过的时候进行数据保存
微博登录一键登录
query("select * from user where account='{$mail}'")->fetch()){
echo '邮箱已被注册!';
exit;
}
if($dbh->exec("insert into user (account,password,other_id)
values('$mail','$password','$wb_id'")>0){
echo '登陆成功!';
$userid=$dbh->lastInsertId();
session_start();
$_SESSION['account']=$mail;
$_SESSION['account_id']=$userid;
exit;
}else{
echo '信息设置失败!';
exit;
}
}
}
}else{
echo '';
exit;
}
?>新浪微博一键登录的好处减少用户注册成本,大大降低了用户注册、登录的门槛,借助庞大的微博用户群,给第三方网站带来更多新用户。同时也使网站内容通过好友关系得到进一步的传播,从而提升网站的访问量和用户数。



