我有PHP级与Facebook API的工作:Facebook登录/注销/检查用户支持PHP-SDK
class Social {
private $name;
private $context;
private $tocken;
public function check(){
$this->tocken = $this->context->getAccessToken(); // get current tocken
if (isset($_SESSION['fb_tocken']) AND !empty($_SESSION['fb_tocken'])){
// session tocken not null
if ($_SESSION['fb_tocken'] == $this->tocken){
// session tocken = current tocken
// update last active
return true;
} elseif ($this->tocken == APPLICATION_TOCKEN) {
// current tocken == default tocken
$this->logout();
} else {
// current tocken <> default tocken
$this->logout();
}
} else {
// session tocken is null
if ($this->tocken == APPLICATION_TOCKEN){
// current tocken is default
return false;
} else {
// current tocken is not default
if ($this->getUserInfo()){
// user registered - login action
if ($this->login())
return true;
else
return false;
} else {
// register new user
if ($this->register()){
if ($this->login()){
return true;
} else
return false;
} else
return false;
}
}
}
}
// ...
};
如果用户使用alogritm:
1 - 登录了Facebook 2 - 来自Facebook 4注销 - - 在应用 3登录登录facebook中 5 - 开放应用
应用问题:
第五步后我的应用程序无法授权用户。但是如果用户按'刷新',他就会被授权。
@Roddie I'am修改此类,现在它可以工作。但是有一个问题 - IE x - Iframe中没有保存cookie。如何克服这种行为? –