onclick イベントのある Facebook ログイン ボタンがあります。
<fb:login-button scope="email, user_about_me, user_birthday" onclick="login()">Login with Facebook</fb:login-button>
クリックした場合のコード:
function login(){
FB.getLoginStatus(function(response) {
if (response.status === "connected") {
FB.api({
method: 'fql.query',
query: 'SELECT name, email, pic_square FROM user WHERE uid=me()'
},
function(response) {
var check = $.get("includes/facebook_login.php", {command:response[0].email, commandP:response[0].pic_square}, //check if users exist with some selects and create sessions
function(data){
if(data == 1){ //on facebook_login.php echo 1 if user exists in our db. if so, redirect.
FB.Dialog.remove(FB.Dialog._active);
window.location="wishlist.php";
}
else if(data == 0){
$("#fb_error").dialog("open");
}
});
}
);
}
}, true);
}
コードは問題なく Facebook ログインを開始します。しかし、このコードが完了すると、次のページ (wishlist.php) にリダイレクトされません。Facebook からもう一度ログイン ボタンをクリックすると、リダイレクトされます。私は何を間違っていますか?