2013-12-26 2 views
2

Когда я запустил этот код, и мои файлы cookie были очищены, и я не зашел в фейсбук. Он направляет меня в facebook, и я вхожу в систему, но когда он возвращает меня на мою страницу, это то же самое, где, как и должно быть показано изображение профиля pic и так далее ...

Я, кажется, сузил проблему оператора return из $ user, потому что он возвращает 0. Я долго смотрел на этот код, и я не нашел, что я делаю неправильно.

Что мне нужно изменить, чтобы получить его так, что когда я вернулся из входа в систему с Facebook будет показывать профайле и так далее ...

<?php 

require_once 'libs/facebook.php'; 
require 'connections/connection.php'; 

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

// Get User ID 
$user = $facebook->getUser(); 
echo $user; 

if ($user) { 
    try { 
     // Proceed knowing you have a logged in user who's authenticated. 
     $user_profile = $facebook->api('/me'); 
     echo $user; 
    } catch (FacebookApiException $e) { 
     error_log($e); 
     $user = null; 
    } 
} 

// Login or logout url will be needed depending on current user state. 
if ($user) { 
    //$logoutUrl = $facebook->getLogoutUrl(); 
    $logoutUrl = $facebook->getLogoutUrl(array('next' => ($fbconfig['baseurl'] . 'logout.php'))); 
} else { 
    $statusUrl = $facebook->getLoginStatusUrl(); 
    $loginUrl = $facebook->getLoginUrl(array(
     'scope' => 'user_about_me', 
     'scope' => 'read_friendlists' 
      )); 
} 
?> 

ответ

1

Не волнуйтесь, мой друг, вы не делая ничего плохого. У меня такая же проблема с моим приложением DEMO, которое прошло хорошо до вчерашнего дня.

Уверен, что у вас возникла проблема с получением токена доступа. Я думаю, что проблема с PHP SDK only.So, вероятно, будет исправлена ​​за какое-то время.

РЕШЕНИЕ: Это сработало для меня, пытаясь найти множество решений по этой проблеме.

В файле base_facebook.php найдите метод makeRequest() и проверьте следующую строку.

$opts = self::$CURL_OPTS; 

Сразу же после этого, добавьте эту строку

$opts[CURLOPT_SSL_VERIFYPEER] = false; 

Более подробную информацию можно найти здесь - http://net.tutsplus.com/tutorials/php/how-to-authenticate-your-users-with-facebook-connect/

+0

Может быть, вы должны [открыть отчет об ошибке] (https: //developers.facebook. com/bugs) с Facebook. Таким образом, вы сможете включить ссылку в этот пост. – Lix

+0

Ну, я не совсем понял эту проблему. так что теперь я в порядке. но спасибо за проявленную озабоченность :) –

+0

Это не то, что вы сказали в своем ответе. Я чувствую, что это должен быть комментарий, а не ответ - на самом деле он не содержит никакой информации. Ты просто говоришь «я тоже». – Lix

Смежные вопросы