2011-10-24 29 views
1

我正在嘗試使用PHP & facebook PHP API做一個小的Facebook應用程序。我需要給予權限發佈狀態等,但它是行不通的。這裏是我的代碼:Facebook的PHP應用程序,req_perms

<?php 
require './src/facebook.php'; 
$facebook = new Facebook(array(
    'appId' => '###', 
    'secret' => '###', 
)); 

$user = $facebook->getUser(); 

if ($user) { 
if ($user) { 
    $logoutUrl = $facebook->getLogoutUrl(); 
    echo "<a href='$logoutUrl'>Logout</a>"; 
} else { 
    $loginUrl = $facebook->getLoginUrl(array(
     'req_perms' => 'publish_stream,read_friendlists,email' 
)); 
    echo "<a href='$loginUrl'>Login with Facebook</a>"; 
} 

?> 

當我登錄網址點擊沒有得到許可(publish_stream,read_friendlists,電子郵件)。我只看到「登錄不會將此應用的活動添加到Facebook」。

+0

請粘貼您的代碼生成的鏈接嗎? at'$ loginUrl' – Luke

+0

另外,爲什麼你有兩個'if($ user){'行? – Luke

回答

4

第一個,您的代碼中有語法錯誤。觀看這兩行

if ($user) { 
if ($user) { 

刪除其中之一。

,不要使用req_perms,但scope,這是你的問題的點

這一個工作非常細

<?php 
require './src/facebook.php'; 
$facebook = new Facebook(array( 
    'appId' => '##', 
    'secret' => '##', 
)); 

$user = $facebook->getUser(); 
if ($user) { 
    $logoutUrl = $facebook->getLogoutUrl(); 
    echo "<a href='$logoutUrl'>Logout</a>"; 
} else { 
    $loginUrl = $facebook->getLoginUrl(array( 
     'scope' => 'publish_stream,read_friendlists,email'  
)); 
    echo "<a href='$loginUrl'>Login with Facebook</a>"; 
} 

demo不,我不收集任何數據

+0

謝謝,這是行得通的。 –

相關問題