2010-03-29 7 views
4

Selon la documentation dans le lien suivant, nous pouvons obtenir l'ID utilisateur si le uer va interagir avec la forme ..Facebook onglet fan page et l'ID utilisateur

http://wiki.developers.facebook.com/ind ... d_Policies

« Si un affichage l'utilisateur interagit avec l'onglet (comme s'il soumet un formulaire, effectue une action entraînant un chargement AJAX de nouveau contenu ou suit une URL relative chargée sur l'onglet), l'UID de cet utilisateur est envoyé à l'application en tant que paramètre fb_sig_user, le profil l'ID utilisateur du propriétaire est envoyé en tant que paramètre fb_sig_profile_user La clé de session de l'utilisateur de visualisation est la clé est envoyée uniquement si l'utilisateur a autorisé l'application. "

Dans mon onglet de page de fan suis-je un formulaire AJAX que l'utilisateur peut soumettre avec une certaine valeur .. maintenant j'ai besoin de l'id de l'utilisateur aussi .. comment puis-je l'obtenir ..

J'ai essayé d'obtenir la valeur dans ma AJAX soumettre la page en utilisant $ _POST ['fb_sig_user'] sans succès .. quelqu'un peut m'aider avec ce s'il vous plaît ..

+1

le lien que vous avez collé est incorrect – marcgg

Répondre

5

Vous ne serez pas en mesure d'obtenir l'ID de l'utilisateur en utilisant $_POST['fb_sig_user'] sauf si vous authentifiez l'utilisateur en ayant cette fonction en ajax du facebook:

ajax.requireLogin = true; 

par exemple, je le récupérer bien avec ceci:

function do_ajax(url, div_id) 
{ 
    document.getElementById('poller_waitMessage').setStyle('display', 'block'); 

    var ajax = new Ajax(); 
    ajax.responseType = Ajax.FBML; 
    ajax.onerror = function(error) 
    { 
     new Dialog().showMessage("Error:", "Some communication error occured, Please reload the page.","Ok"); 
    }; 

    ajax.ondone = function(data) 
    { 
     document.getElementById('poller_waitMessage').setStyle('display', 'none'); 
     document.getElementById(div_id).setInnerFBML(data); 

    } 

    ajax.requireLogin = true; // <----- this is important 
    ajax.post(url); 
} 
+0

Parfait .. Merci –

+0

@mailtoanzer: Vous êtes les bienvenus :) – Sarfraz

1

J'ai heureusement en utilisant le formulaire fb_sig_profile_user variable pour des applications précédentes, et lors de l'élaboration d'une nouvelle application la semaine dernière, la variable avait nulle part où se trouve.

recherché pendant plusieurs jours, j'étais sur le point de renoncer, puis la réponse trouvée:

ajax.requireLogin = true; 

Je comprends FB se soucie de la vie privée et tout, mais ils ont vraiment besoin d'annoncer ce genre de changements avant tout le prendre.

Million Merci!

Questions connexes