2012-05-28 6 views
0

FB에서 현재 로그인되어 있는데도 example.php를 기반으로 일부 코드를 테스트 중이며 getUser()은 0을 반환합니다. 내 index.php를 페이지에 코드를 다음과 같이로그인 한 경우에도 getUser()는 항상 0을 반환합니다.

<?php 

include 'fbLibrary/facebook.php'; 

$facebook=new Facebook(array(
     'appId' => 'myAppID', 
     'secret' => 'mySecret', 
     'cookie' => true 
     )); 


$user=$facebook->getUser(); 
echo "getUser() returned " . $user . "<p>"; 


if ($user) 
{ 
    //fb query 
    try 
    { 
     $me=$facebook->api('/me'); 
     print_r($me); 

    } 
    catch (FacebookApiException $e) 
    { 
     echo $e->getMessage(); 
    } 
} 


if ($me) 
{ 
    $logoutUrl=$facebook->getLogoutUrl(); 
    echo "<a href='$logoutUrl'>Logout</a>"; 
} 

else 
{ 
    $loginUrl=$facebook->getLoginUrl(array(
     'scope' => 'friends_status,publish_stream' 
    )); 
    echo "<a href='$loginUrl'>Login</a>"; 
} 

?> 

나는의 index.php 페이지로 이동, 에코 테스트 반환을 "인 getUser()가 반환"$loginUrl이 URL로 설정 0 그리고 비록 나는 그것을 클릭하면, 그것은 단지 같은 index.php 페이지로 나를 데려다 준다.

FB에서 로그 아웃하고 페이지를 다시로드하는 경우 "로그인"을 클릭하면 내 앱에 로그인하기 위해 Facebook으로 이동하게됩니다. 그럼 내가 성공적으로 로그인했을 때, 작동하지 않는 로그인 URL이있는 index.php 페이지로 돌아 왔고 getUser()가 0을 계속 반환합니다.

어제 PHP SDK를 다운로드 했으므로 그것은 현재입니다.

+1

최신 php sdk를 사용하고 있습니까? 앱 설정에서 사이트 URL을 올바르게 설정 했습니까? siteUrl의 URL과 리디렉션 URL이 동일해야합니다. – Jashwant

+0

@ 재 스턴트, 리디렉션 URL은 무엇을 의미합니까? 이 앱을 "페이스 북 로그인 웹 사이트"로 설정했는데 리디렉션 URL 필드가없는 것 같습니다. 그러나 사이트 URL이 정확합니다. –

+0

'https : // github.com/facebook/facebook-php-sdk' – Jashwant

답변

0

그런 다음 FB 클래스의 매개 변수 도메인을 설정할 수 있습니다. 다음과 같이 입력하십시오 :

<?php 
$facebook = new Facebook(array(
'appId' => APP_ID,//$app_id, 
'secret' => APP_SECRET,//$app_secret, 
'cookie' => true, 
'domain'=>'xxxdomain.com', 
)); 
$session = $facebook->getUser(); 
+0

그냥 해봤 어. 아무것도 바뀌지 않았다. –

관련 문제