2010-11-19 14 views
1

facebook bağlanmasında oturum açtıktan sonra çağrılan bir javascript işlevi kullandım.kek php kullanarak fbml içinde e-posta adresini ve kullanıcı Kimliği nasıl edinilir

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"; 
} 

Yukarıdaki işlevi çağıran bir facebook bağlantı düğmesi ekledim.

ben fbml etiketleri üzerinden kullanıcı adını ve profil pic almak için tek mümkün. Kullanıcı e-postasını ve kullanıcı kimliğini nasıl edinebilirim?

Lütfen bana yol göster.

cevap

0

Hiç FB api kullanmamıştım, ancak e-posta verdiyse şaşırırdım. Ah ... bu Facebook. Sözlerimi yerim.

1

Fbml aracılığıyla e-posta alabileceğinizi sanmıyorum çünkü onunla birlikte gösterebilirsiniz ve hiçbir anlamı yoktur.

Gerçekte FB API'nın bir PHP bölümüne sahip olmanız gerekir, bu da size bu konuda yardımcı olabilirsiniz. Bu çok iyi plugin for CakePHP'u kullanabilmenize rağmen

Çalışmak gerçekten çok kolay ve kullanıcının e-postasını kesin olarak alabilirsiniz.

+0

Cevabınız için teşekkür ederiz. Ama benim sorunum pasta php sürüm 2 kullanıyoruz ve sıkı bir programdayız bu yüzden şimdi yükseltmek için zamanım yok. :( – Dora

İlgili konular