Re: [請益] facebook php如何取得即時使用者登入狀 …
※ 引述《terrybob (罪雲樵)》之銘言:
: facebook api使用 php sdk 3.1.1版本
: =========
: 問題:
: 若$user有值,我可以判定使用者有登入fb。
: 若$uid有值,我可以判定使用者有安裝應用程式。
: 在登入、安裝應用程式進入a頁當下,若使用者開一個新分頁(b頁面)
: 在b頁登出fb帳號後,回到a頁重新整理,則$user、$uid還是有值!
: 這麼一來,我就不知道要怎麼判定使用者現在是否為「登入」的狀態…
: 前一版2.x版吧…還有getSession函式判定,
: 但3.1.1版,居然沒有getSession函式…
: 目前只能用FBjs裡的getLoginStatus函式去判斷想執行的事…
: 但沒辦法用php sdk的方式,去取得現在使用者的session嗎?
: 以上,謝謝。@_@/
自問自答- -||| …
在使用print_r($GLOBALS)變數後,進行比對,
發現在facebook變數裡,有[signedRequest:protected]的變數可以判斷
也就是說…改用這樣的方式
$SignedRequest =$facebook->getSignedRequest();//有登入fb,該變數就會有值!!
if($SignedRequest)
{
try{
$me =$facebook->api('/me');
$uid =$me['id'];
$need_login =0; //didn`t anything
}catch(FacebookApiException $e){
//error_log($e);
}
}
之後的程式,系統用$SignedRequest判斷使用者有無登入即可!
只能說…fb還真有深度呀~~~~
--
朝叩朱門乞餘餐
嗟來冷眼有德顏
歸途踏盡金磚路
漫天殘霞不用錢
吾乃…富貴乞丐-花爵百鍊生
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.75.186.7