0

Je travaille sur une page de test pour que la fonctionnalité du bouton de connexion Facebook soit correcte.Comment mettre à jour mes liens de connexion/déconnexion après la déconnexion de Facebook

J'ai obtenu le bouton FB pour fonctionner correctement lorsque la personne se connecte et se déconnecte de FB. Mais je ne suis pas sûr de savoir comment mettre à jour l'en-tête de mes sites pour basculer le lien de connexion/déconnexion. Après la journalisation/déconnexion du FB, je mets à jour la session du site avec toutes les mêmes données que lors d'une connexion/déconnexion standard, mais pour une raison quelconque, l'en-tête ne se met pas à jour.

Une idée de comment y remédier? Pour votre information, je teste ce genre de choses ici: http://www.comehike.com/test_fb_connect.php

Répondre

1

Eh bien, pour que vous devez utiliser l'API Javascript Facebook pour détecter lorsque l'utilisateur est connecté ou déconnecté, puis faire une demande AJAX pour mettre à jour votre tête. Cela serait fait par FB.Event.subscribe, comme l'indique l'extrait suivant sur:

window.fbAsyncInit = function() { 
    FB.init({ 
     appId : 'YOURAPPID', 
     status : true, // check login status 
     cookie : true, // enable cookies to allow the server to access the session 
     xfbml : true, // parse XFBML 
     channelUrl : 'http://www.yourdomain.com/channel.html', // Custom Channel URL 
     oauth : true //enables OAuth 2.0 
    }); 

    // retrieve the login status. 
    FB.getLoginStatus(function(response) { 
     if (response.authResponse) update_user_is_connected(); 
     else update_user_is_not_connected(); 
    }); 

    // This will be triggered as soon as the user logs into Facebook (through your site) 
    FB.Event.subscribe('auth.login', function(response) { 
     // Here you would update your header. 
     update_user_is_connected(); 
    }); 
}; 

Vous pouvez en savoir plus sur FB.Event.subscribe ici: http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

S'il vous plaît noter que ce code est pris de previousanswers de la mienne.

+0

Je fais déjà tout cela, et j'envoie un appel AJAX pour connecter la personne dans et hors. Juste le site général, pour une raison quelconque, ne reflète pas cela. – Genadinik

+0

Si vous regardez le lien que j'ai posté, peu importe si vous vous connectez ou non à fb, les appels ajax que je fais pour mettre à jour la session utilisateur generall sur le site, ne reflètent pas le lien login/logout en haut à droite. – Genadinik

+0

Oui, c'est clairement parce que vous ne vérifiez pas (dans votre PHP) si l'utilisateur est connecté ou non. Cela peut être fait via getUser(); –

Questions connexes