何らかの理由で、Facebook(つまり、facebook.com)にログインするたびに、Facebook SDKを使用している私のWebサイト(2回の更新後)でユーザーが自動的に認証されます。getLoginUrl()
しかし、奇妙なことに、ユーザーは、ここで何が起こっているのかを使用して生成した、生成されたログインURLをクリックする必要がありません。以下は、ユーザーがログインしているかどうかを確認するための私の関数です。
function IsUserLoggedIn()
{
$ci=& get_instance();
try
{
$me = $ci->facebook->api('/me');
$user = $ci->facebook->getUser();
if ($me&&$user)
{
//These var dumps show the right info.
var_dump($user);
var_dump($me);
return TRUE;
}
}
catch (FacebookApiException $e) {
//User is not logged in
$ci->load->library('session');
$user_id = $ci->session->userdata('user_id');
$is_user_logged_in = $ci->session->userdata('logged_in');
if(($user_id != FALSE)&&($is_user_logged_in != FALSE))
{
return TRUE;
}
else
{
return FALSE;
}
}
}