$().ready(function(){ window.fbAsyncInit = function() { FB.init({ appId : '5252525252525252', session : <?php echo json_encode($session); ?>, // don't refetch the session when PHP already has it status : true, // check login status cookie : true, // enable cookies to allow the server to access the session xfbml : true // parse XFBML }); }; init_fb(); }); function init_fb(){ var e = document.createElement('script'); e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; e.async = true; document.getElementById('fb-root').appendChild(e); }
Przebieg wydarzeń wygląda następująco:
1. Loguje się za pomocą poniższego kodu:
function fb_login(){ FB.login(function(response) { // daje znac fb ,ze loguje sie if (response.session) { if (response.perms) { // user is logged in and granted some permissions. // perms is a comma separated list of granted permissions } else { // user is logged in, but did not grant any permissions } location.href = strBaseUrl+"index/fb_login"; // a tu nastepuje faktyczne logowanie do serwisu lub rejestracja } else { // user is not logged in } }, {perms:'email'}); }
2. Zostaje poprawnie zalogowany do serwisu.
3. Wylogowywuję się za pomocą poniższego kodu:
function fb_logout(){ FB.logout(function(response) { // tu daje znac fb ,ze sie wylogowalem, location.href = strBaseUrl+"index/wyloguj"; // a tutaj jest wlasciwe wylogowanie z serwisu, }); }
4. I teraz próbując się zalogować na nowo, nie mogę - otwiera się dialog fb do logowania po czym znika i przekierowuje mnie na główną nie logując.
5. Musze wyczyścić ciastka żeby móc się zalogować jak na początku.
Gdzie jest lub może być błąd?