napojení facebook SDK na nette
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Aleš Jandera
- Člen | 24
Ahoj lidi,
snažím se převést svoji aplikace plan.smeniste.com pod facebook. Bohužel když si normálně propojím fb sdk s php tak to dokážu, jenže se mi nedaří napojit fb sdk na nette. Když do index.php vložím:
//Vloží knihovnu pro připojení na facebook
require_once APP_DIR . '/fb/src/facebook.php';
//nadefinuje proměnné pro připojení, všechny najdete v přehledu vaší aplikace na facebooku
$canvasURL = "http://apps.facebook.com/smeniste/";
$absoluteURL = "http://fb.smeniste.com/www/";
$appID = "....";
$apiKey = "......";
$appSecret = ".......";
//Vytvoří připojení na facebook
$facebook = new Facebook(array(
'appId' => $appID,
'secret' => $appSecret,
'cookie' => true,
));
//Zjistí ID uživatele, který používá aplikaci
$uid = $facebook->getUser();
$me;
//Pokud jsme ID získali, uživatel tuto aplikaci používá a potvrdil její přístup (takovéto okno, když vstupujete do aplikace, s tím co vše od Vás aplikace chce (osobní údaje, email..)
if ($uid)
{
//načteme si data o uživateli, pravděpodobně je budeme chtít v aplikaci používat a tady nám poslouží pro testování zda je propojení s FB a uživatelem v pořádku
try
{
$me = $facebook->api('/me');
}
//pokud není, vypíšeme chybu
catch (FacebookApiException $e)
{
print_r($e);
$uid = null;
}
}
//Pokud jsme ID uživatele nezískali, znamená to že aplikaci nepoužíval nikdy a je třeba ho požádat o svolení k přístupu k jeho datům.
//To se udělá tak že se vygeneruje login url a pak se na ní uživatel přesměruje. Pokud aplikace chce nějaké věci navíc, třeba jako zvláštní oprávnění k emailu a offline přístupu k datům, dávají se jako parametry funkce getLoginUrl
else
{
$loginUrl = $facebook->getLoginUrl();
echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
}
ale výsledek skončí fatal error Cannot unset string offsets.
Má s tím někdo nějaké zkušenosti, nebo by věděl co s tím?
- Jirda
- Člen | 103
Pokud chces videt hezkou implementaci FB, pak doporucuji zde od Honzy Marka https://github.com/…nette20login . Muzes tam videt, jak je v configu pekne zavedena facebook sdk jako sluzba, pricemz je tam i ukazka prihlaseni pres fb.
Jinak v tom kodu vyse nevidim to „napojeni na nette“. Urcite mrkni na ten odkaz.