2010-11-19 13 views
0

Özet:Facebook php application - Ek bilgi istemek için konfigüre et

Facebook'taki uygulamamı, kullanıcıdan ek bilgi istemek için nasıl yapılandırabilirim?

detay:

Bir facebook uygulama yazmak denemek için son zamanlarda verdi. Grafik api arkasındaki fikir iyi görünüyordu ve bunun kolay olacağını umuyordum. Büyük hata! onlar için özel izin gerektirmiyor, çünkü benim albüm ve fotoğraf ulaşamıyorum, Ancak

// Create our Application instance (replace this with your appId and secret). 
$facebook = new Facebook(array(
    'appId' => '*****', 
    'secret' => '*****', 
    'cookie' => true, 
)); 

// Read session info from Facebook object above 
$session = $facebook->getSession(); 

$me = null; 
$myfriends = null; 
$myalbums = null; 
$myphotos = null; 

// If logged in ok, load data into php objects for use in page 
if ($session) { 
    try { 
    $uid = $facebook->getUser(); 
    $me = $facebook->api('/me'); // infor about logged in person 
    $myfriends = $facebook->api('/me/friends'); // list of their friends and associated ids 
    $myphotos = $facebook->api('/me/photos'); // photos I've loaded or am tagged in -  requires permissions! 
    $myalbums = $facebook->api('/me/albums');// Albums I've created - requires permissions! 
} catch (FacebookApiException $e) { 
    error_log($e); 
    } 
} 

:

başarıyla benimle ilgili halka açık bilgi alır hangi bir araya aşağıdaki Arnavut kaldırımı başardı ettik kullanıcı tarafından verilir. Sorunum, facebook tabanlı uygulama kurulumunda bunu yapabilecek herhangi bir ayar göremiyorum.

Yardımcı olabilir misiniz?

cevap

1

Aşağıdaki kodu kendinize ekleyin. Facebook uygulamanızın URL'si olmak için $ url ayarlamalısınız ve ihtiyaçlarınız doğrultusunda 'req_perms' ayarını yapmalısınız.

if(!$session) { 
    $url = $facebook->getLoginUrl(array('req_perms'=>'email,publish_stream', 'next'=>$returnUrl)); 
    echo <<<EOD 
<html> 
<head> 
<script type="text/javascript">function redirect(){ top.location.href = "$url"; }</script> 
</head> 
<body onload="redirect();">Please wait...</body> 
</html> 
EOD; 
} 
+0

Fantastik. Teşekkürler! – Derek

1

Peki, yukarıdaki yanıt neredeyse doğru. Ancak, diğer Graph API izinlerine ihtiyacınız varsa, aşağıdaki bağlantıya Facebook_Permissions başvurabilirsiniz. Ve yukarıdaki kodu düzeltmenin yolu: array ('req_perms' => 'GEREKLİ İZİNLER EKLEYİN', 'sonraki' => $ returnUrl). Ayrıca, birden fazla izin varsa, bunları virgülle ayırın.

+0

Ek bilgi için teşekkürler. – Derek

İlgili konular