У меня есть страница входа в систему Facebook example.com/login-fb
, она должна обрабатывать основного пользователя Facebook, который зарегистрировался, не зарегистрировался и не распечатал информацию, если таковой имеется. Войти ссылка генерирует штраф, если я нажимаю, он идет хорошо до Facebook и возвращается к этому же сценарию с $ _GET parameeter а - я получаю что-то вроде этогоВход в Facebook с PHP SDK, getUser() возвращает 0 в обратном вызове
example.com/login-fb/?code=AQDgxX7dkmddbaWZbTCfLf063g0aNRuHJG71pTuCmsdXTlQX9JYe1wmPl94KcFG2BkPFjgkAZ8k0_gFcECUINJ59qbOVH9J5AKHVZP5mxQ7K25qPNQW2VHEbe80uhbrHD0QB9QeP8WSr8EdnM3ocadEVqrgXAXTRu2_Q8jBYZpBZp7MrZyg9K9BhCJEiC0xnp9a-mwyMoYtpZKxhjtEAiDwJvcZgUjftRKK-0091aECRozV5gdOSdPrqKBZhsmn5sHsjbOx1zB4z8gj2LGTxQzdaRez3Jxknn6A8wpZp70jilycIdfCBA8c_b35XOg93FTM&state=8e633d68644595d174ad01d0b7aed365#_=_
Однако $ facebook-> GetUser() ; всегда 0, поэтому он по-прежнему показывает ссылку LOGIN вместо ссылки выхода и информации пользователя. любая помощь ?
КОД: (с использованием Facebook PHP SDK (v.3.2.3))
<?php
//Already REQUIRED: FB-SDK, MyFacebook class, home_url() and the_print_r()
$facebook = new MyFacebook();
$fb_params = array(
'scope' => 'email',
'redirect_uri' => home_url().'/login-fb'
);
$loginUrl = $facebook->getLoginUrl($fb_params);
$logoutUrl = $facebook->getLogoutUrl();
$user = $facebook->getUser();
?>
<?php the_print_r($user); ?>
<?php if ($user) { ?>
Your user profile is
<?php $user_profile = $facebook->api('/me'); ?>
<?php print htmlspecialchars(print_r($user_profile, true)) ?>
LOGOUT:<br><a href="<?php echo $logoutUrl; ?>"><?php echo $logoutUrl; ?></a>
<?php } else { ?>
LOGIN:<br><a href="<?php echo $loginUrl; ?>"><?php echo $loginUrl; ?></a>
<?php } ?>
РЕШИТЬ:
Наконец, я задавался вопросом, почему это Пример origanl Facebook SDK работает - и я нашел вне - МОЙ КОД БЫЛ ИЗВЕСТНЫМ! - это была проблема с обработкой URL-адресов - код login-fb /? был неверно истолкован, поэтому не было $ _GET ['code']! - просто просто вызовите скрипт с расширением - login-fb.php - и проблема решена! ...
Кто-нибудь? Я готов предоставить дополнительную информацию inf необходимой :)! –
выглядит вполне корректно для меня ... Вы попробовали с простым завитом? Это может быть функция getUser(). Я забыл, как это работает в библиотеке PHP SDK. Вы можете распечатать токен доступа после получения кода, или он не заходит так далеко? – tattvamasi
это была глупая ошибка перезаписи url: x –