» »

Spletna stran s Facebook login funkcijo

Spletna stran s Facebook login funkcijo

weasel ::

Ker imam malce prostega časa, poskušam na svoji (zaenkrat še localhost) strani implementirati FB login/logout funkcijo (Da jim ni potrebno kreirati dodatnega up. računa. Vse za udobje uporabnikov, a ne? :) ). Aplikacijo na developers.facebook.com sem že ustvaril s potrebnimi podatki, in login potem celo dela. Potem pa se zatakne pri logout: namreč kliknem povezavo "Logout" in me odjavi samo od facebook.com strani, od moje lastne pa ne (tudi, če osvežim svojo stran, sem še kar logiran).

if ($user) {

  //$params = array( 'next' => 'https://www.myapp.com/after_logout' );
  //Next URL to which to redirect the user after logging out (should be an absolute URL).
  //$facebook->getLogoutUrl($params); // $params is optional.

  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
}


Dosti ljudi ima te probleme, ampak so SOLVED kode zastarele. Pomoje je problem v zvezi s kakšnimi piškotki ali pa sejami, ki se vpostavijo ob loginu.

Še dodatne info o getLogoutUrl() :
getLogoutUrl

Ali je začetek sploh pravilen oz. kako se ponavadi implementira FB login in avtentikacija na lastni strani?

Če sem dal pomanjkljive podatke, me opomnite in jih dodam.

Ice-Heki ::

Ko se uporabnik prijavi, mu verjetno daš nek piškotek. Ko se odjavi s tvoje strani, mu pač pobriši tvoj piškotek (še vedno pa lahko ostane prijavljen na Facebook-u).

blackbfm ::

pravilno preverjanje ali je uporabnik prijavljen ali ne, gre na tak način:
function userSignedIn() {
	if (isset($facebook) && $facebook->getUser()) {
		try { $facebook->api('/me'); } catch (Exception $e) { return false; }
		return true;
	} return false;
}

funkcija vrne true če je, oz. false če ni

Ko se uporabnik prijavi, mu verjetno daš nek piškotek. Ko se odjavi s tvoje strani, mu pač pobriši tvoj piškotek (še vedno pa lahko ostane prijavljen na Facebook-u).


Če uporabljaš facebookov sdk, gre popolnoma avtomatsko vse, ne rabiš nič ekstra nastavljat. Rabi samo native session. Zna bit pa problem z raznimi frameworki, ki sejo vzdržujejo po svoje, na nek svoj interen način oz. če brišejo query parametre, potem se pa sdkju fuzla.

weasel ::

Hvala za tole, kaj moram pa za logout naredit? Ker v dokumentaciji piše, da naj uporabim tale getLogoutUrl(), ki me izpiše iz Facebook seje in preusmeri nazaj v aplikacijo (mojo stran). Zgodi se pa to, da me iz Facebook strani izpiše, ampak na strani sem pa še vedno vpisan. :|

getLogoutUrl() sicer lahko dobi parameter, ki je link strani, na katero te lahko po izvedbi preusmeri, pa sem razmišljal, da bi kot parameter dal nek logout.php, v katerem pobrišem sejo in piškotke. Ampak Facebook-ov SDK nima za ta namen nič takšnega implementiranega.

Zgodovina sprememb…

  • spremenilo: weasel ()

blackbfm ::

probaj

$facebook->destroySession();


ali pa

session_destroy();


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

curl + ssl

Oddelek: Programiranje
8704 (522) MrStein
»

[Android]Vrnitev v "parent" activity

Oddelek: Programiranje
101346 (1219) KernelPanic
»

[php] Problem z dinamično stranjo

Oddelek: Izdelava spletišč
111469 (1314) Iskraman
»

Problem pri uporabi niti (threade) C++

Oddelek: Programiranje
10962 (817) rabbit-zek
»

oop+php+sessions

Oddelek: Izdelava spletišč
152436 (2044) cahahopie

Več podobnih tem