2013-10-08 3 views
1

Когда пользователь пытается войти на мой сайт с помощью своей учетной записи facebook, я пытаюсь перенаправить сценарий, который проверяет идентификатор пользователей на мой db, чтобы узнать, зарегистрированы ли они. Когда я нажимаю логин, он вызывает страницу facebook для входа с использованием учетных данных fb, а затем просто перенаправляет на домашнюю страницу mywebsite, а не запускает скрипт, который проверяет пользователя на базе базы данных.Facebook getLoginUrl() не перенаправлен на указанную страницу

Это код на моей домашней странице, где я пытаюсь войти в систему.

<?php 
require '.../src/facebook.php'; 

$facebook = new Facebook(array(
    'appId' => 'APP_ID', 
    'secret' => 'SECRET', 
    'cookie' => true, 
)); 

//2. retrieving session 
$session = $facebook->getUser(); 

//3. requesting 'me' to API 
$me = null; 
if ($session) { 
    try { 
     $uid = $facebook->getUser(); 
     $me = $facebook->api('/me'); 
    } catch (FacebookApiException $e) { 
     error_log($e); 
    } 
} 

//4. login or logout 
if ($me) { 
    $logoutUrl = $facebook->getLogoutUrl(array(
     'next'=>'http://.../logout.php' 
    )); 
} else { 
    $loginUrl = $facebook->getLoginUrl(array(
     'next'=>'http://.../checkFBLogin.php' 
    )); 
} 

?> 

Futher вниз:

<?php if ($me): ?> 
    <a href="<?php echo $logoutUrl; ?>">Logout with Facebook</a> 
<?php else: ?> 
    <a href="<?php echo $loginUrl; ?>">Login with Facebook</a> 
<?php endif ?> 

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

ответ

1

Имя ключа в массиве не равно его redirect_url.

$loginUrl = $facebook->getLoginUrl(array(
     'redirect_url'=>'http://.../checkFBLogin.php' 
    )); 
+0

Спасибо, однако по-прежнему кажется, что ни getloginurl, ни getlogouturl не перенаправляются на свои страницы. – user2731173

+0

Это просто перенаправление на домашнюю страницу facebook? Правильно ли указан URL? –

+0

Он перенаправляет меня на мою домашнюю страницу. И да, я использовал правильный абсолютный url – user2731173

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