как получить адрес электронной почты и идентификатор пользователя в fbml, используя торт php - PullRequest
1 голос
/ 19 ноября 2010

Я использовал одну функцию javascript, которая вызывается после входа на Facebook-соединение.

    var FB_API_KEY = "api key";
var FB_CHANNEL_PATH = "xd_receiver.htm";

FB.init(FB_API_KEY, FB_CHANNEL_PATH, {permsToRequestOnConnect : "email"});
FB.Connect.ifUserConnected(FB_ConnectPostAuthorization);

function FB_ConnectPostAuthorization() {

    var user_box = document.getElementById("user_id");
    user_box.innerHTML = 
    "<span>"
    +"<fb:profile-pic uid='loggedinuser' facebook-logo='true'></fb:profile-pic>"        
    +"Welcome , <fb:name uid ='loggedinuser' useyou='false'></fb:name>" 
    +"You are signed in with your facebook account"
    +"</span>";

    FB.XFBML.Host.parseDomTree();


    FB_RequireFeatures(["Api"], function(){
        var api = FB.Facebook.apiClient;
        var fb_uid = api.get_session().uid;

        $.post('/users/fb_login/', {'fb_uid': fb_uid}, function(response) {
            if (response != "yes") {
                api.users_hasAppPermission("email", function(result) {
                    if (!result) {
                        FB.Connect.showPermissionDialog("email", redirect_to_done_page);
                    } else {
                        redirect_to_done_page()
                    }
                })
            } else {
                redirect_to_done_page()
            }
        });
    });       
}

function redirect_to_done_page() {
    window.location = "xyz";
}

Я добавил кнопку подключения Facebook, которая вызывает вышеуказанную функцию.

Я могу получить имя пользователя и профиль только через теги fbml. Как получить адрес электронной почты и идентификатор пользователя.

Пожалуйста, ведите меня.

Ответы [ 2 ]

1 голос
/ 19 ноября 2010

Я не думаю, что вы можете получать электронную почту через fbml, потому что с ее помощью вы можете просто показать это, и в этом нет никакого смысла.

На самом деле вам нужна PHP-часть FB API, которая поможет вам в этой задаче.

Хотя вы можете использовать этот очень хороший плагин для CakePHP . Это действительно легко заставить работать, и вы точно можете получить электронную почту пользователя.

0 голосов
/ 19 ноября 2010

Я никогда не использовал API FB, но я был бы удивлен, если бы они давали электронные письма.Ох ... это Фейсбук.Я ем свои слова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...