1
我瀏覽過網站上的很多帖子,但仍無法獲得Facebook登錄和重定向工作。當用戶通過Facebook按下網頁上的按鈕登錄時,我想自動將其重定向到另一個網頁,並通過url傳遞他們的電子郵件和密碼。不幸的是,我只能在登錄時才工作,我必須手動重新加載頁面,以便通過刷新我的網頁來使其進入重定向頁面。我想知道是否有人可以發佈代碼如何做到這一點?我嘗試了很多東西。Facebook登錄重定向PHP/Javascript不工作
<?php
//uses the PHP SDK. Download from https://github.com/facebook/php-sdk
require 'facebook.php';
define('YOUR_APP_ID', 'xxxx');
$facebook = new Facebook(array(
'appId' => 'xxxx',
'secret' => 'xxxx',
));
?>
<div id="fb-root"></div>
<div id="user-info"></div>
<div class="fb-login-button" style="position:absolute;top:800px;">Login with Facebook</div>
<script>
window.fbAsyncInit = function() {
FB.init({ appId: 'xxxx',
status: true,
cookie: true,
xfbml: true,
oauth: true});
function updateButton(response) {
var button = document.getElementById('fb-auth');
if (response.authResponse) {
//user is already logged in and connected
var userInfo = document.getElementById('user-info');
FB.api('/me', function(response) {
userInfo.innerHTML = '<img src="https://graph.facebook.com/'
+ response.id + '/picture">' + response.email;
button.innerHTML = 'Logout';
});
button.onclick = function() {
FB.logout(function(response) {
var userInfo = document.getElementById('user-info');
userInfo.innerHTML="";
});
};
}
else {
//user is not connected to your app or logged out
button.innerHTML = 'Login';
button.onclick = function() {
FB.login(function(response) {
if (response.authResponse) {
FB.api('/me', function(response) {
var userInfo = document.getElementById('user-info');
userInfo.innerHTML =
'<img src="https://graph.facebook.com/'
+ response.id + '/picture" style="margin-right:5px"/>'
+ response.name;
});
} else {
//user cancelled login or did not grant authorization
}
}, {scope:'email'});
}
}
}
// run once with current status and whenever the status changes
FB.getLoginStatus(updateButton);
FB.Event.subscribe('auth.statusChange', updateButton);
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol
+ '//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
<?php
$uid = $facebook->getUser();
if($uid != 0) {
header("Location: signup.php");
}
?>
感謝您的答覆,但它仍然不會自動將用戶重定向。我必須手動刷新頁面才能進入重定向頁面。你知道我怎樣才能讓它自動工作嗎? – user1446797