2013-04-14 74 views
0

我正在製作一個Facebook應用程序在標籤頁中使用,應用程序的重點是人們上傳圖片和分享它,讓其他人可以看到並投票。所以我知道我必須使用app_data將用戶重定向到特定圖片,但我無法處理它。我試着用$facebook->getSigned_request,$_REQUEST但他們都沒有返回app_data值。此外即時使用PHP SDK示例文件進行登錄,但是當我從標籤頁嘗試它時,什麼都不會發生。你能告訴我如何從標籤頁登錄並獲得app_data值嗎?Facebook的PHP SDK和標籤頁 - 登錄和signed_request

回答

2

所以,從一開始。首先,當用戶訪問您的頁面時,您必須檢查該用戶是否授予了您的應用權限。

$facebook = new Facebook(array(
    'appId' => YOUR_APP_ID, 
    'secret' => YOUR_SECRET 
)); 

if($facebook->getUser()) { 
    //Here will be code to get app_data 
} else { 
    $params = array(); //Here you will enter key=>value pairs of permissions you need 
    echo '<script>top.location.href="' . $facebook->getLoginUrl($params) . '"</script>'; 
    //Code above redirects user to page that will ask for permissions for your app. 
} 

上面的代碼將用戶登錄和權限。現在,爲了得到app_data文件,你將不得不這樣做:

$signed_request = $facebook->getSignedRequest(); //getting signed_request 
$app_data = $signed_request['app_data']; // getting app_data 

現在,爲了得到app_data文件,你需要確保你把它傳遞給你的標籤在URL(GET)。像這樣

PATH_TO_YOUR_FB_PAGE/?app_data=SOME_VALUE 

,或者如果你的頁面?sk=app_PAGE_ID結尾,只需加上&app_data=SOME_VALUE

+0

它仍然沒有工作 –

+0

正是我一直在尋找@Darvex – C0NFUS3D

+0

@ c0nfus3d1高興它幫助:)待辦事項,答案是1歲,有些事情可能已經改變。謹慎使用。 – Darvex

相關問題