2012-01-24 51 views
1

我是Facebook應用程序開發的新手。因爲我對PHP很熟悉,所以選擇了PHP SDK。花了一些時間後,我仍然無法開始實際的應用程序。使用PHP SDK開發Facebook應用程序

<?php 
require_once 'facebook.php'; 

$facebook = new Facebook(
    array(
     'appId' => 'XXXXXXXXXXXXXX', 
     'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx', 
    ) 
); 



$user_id = $facebook->getUser(); 
var_dump($user_id) ; 
$userInfo = $facebook->api('/' + $user_id); 

echo ' Welcome ' . $userInfo['name'] ; 
?> 

上面的代碼應該只是打印用戶的名字。但它給人的錯誤:

Fatal error: Uncaught CurlException: 77: error setting certificate verify locations: CAfile: C:\wamp\www\fb/fb_ca_chain_bundle.crt CApath: none thrown in C:\wamp\www\fb\base_facebook.php on line 853

我在做什麼錯在這裏?

+3

我從代碼中刪除了APP_ID和APP_SECRET。您應該**絕不**使您的APP_SECRET公開 - 您應該立即通過在[開發人員應用程序](https://developers.facebook.com/apps)中轉到應用程序的'basic settings'來重置它。您不必發佈APP_ID,除非有人試圖協助您並在實際應用中看到某些內容。 – Lix

回答

4

看起來像它找不到fb_ca_chain_bundle.crt,或許正斜槓需要反斜槓,所以請嘗試查找並更改它。

如果不工作,這可能:

Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYPEER] = false; 
Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYHOST] = 2; 
1

請檢查我的github回購:

https://github.com/kanishkaganguly/Facebook_PHP_SDK

我最近也開始了,並上傳了展示一組代碼PHP SDK的各種功能。

讓我知道你是否覺得它有用。

+0

我從你的github下載了這些文件。在index.php中,即使在我登錄時,它也會顯示帶有FB鏈接的登錄信息。然後它讓我批准該應用程序。我批准了它。但隨後它又回到與FB登錄相同的頁面。我沒有看到我用我/我的電話看到的錯誤,但我也沒有看到個人詳細信息。 – somnath

6

您需要在與base_facebook.php相同的文件夾中有fb_ca_chain_bundle.crt。 你可以在這裏得到它: certificate

+1

謝謝,這個修復了我,我甚至沒有這個文件。感謝一束。 – Andrew

+0

@Andrew:很高興幫助:) – Coder

1

我不知道爲什麼我做什麼工作,但是我修改base_facebook.php線978對我來說,
來自:
if (curl_errno($ch) == 60)
到:
if (curl_errno($ch) == 77 or curl_errno($ch) == 60)

+0

看起來像這個修補程序已應用在當前的主分支。 –

相關問題