PHP çalışan oturumu kaybetme ile Facebook Uygulaması

2 Cevap php

Iam PHP tabanlı bir Facebook uygulaması oluşturmak için çalışıyor. Uygulama iFrame olarak Tuval içinde benim kendi Webhost üzerinde php altında çalışıyor.

Ne Facebook PHP için yeni istemci kitaplığı dahil ettik: facebook-php-sdk-94fcb13

Client ile birlikte örnekte olduğu gibi Facebook Connect kullanmaya çalışıyorum benim uygulama iam içinde kullanıcı yetkilendirme için. Her şey yolunda 1 Giriş çalışır, ama ben sayfayı yeniden F5 tuşuna vurduğunuzda, oturum kaybolur ve tekrar giriş yapmanız gerekir. I Facebook Tuval dışında benim uygulamayı çağırdığınızda her şey yolunda.

Iam emin değilim, ama benim Tarayıcı düşünüyorum (Chrome / Firefox - Ubuntu) bir iFrame içinde bir tanımlama saklamak için izin vermiyor.

Birisi bu sorunu için bir çözüm biliyor mu? İşte Sourcecode bazı parçaları şunlardır:

$facebook = new Facebook(array(
    'appId'  => 'x',
    'secret' => 'x',
    'cookie' => 'true',
));

$session = $facebook->getSession();
$facebook->setSession($session);


$me = null;
// Session based API call.
if ($session) {
  try {
    $uid = $facebook->getUser();
    $me = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
  }
}

// login or logout url will be needed depending on current user state.
if ($me) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
}

2 Cevap

Çözüldü :-)

Ben kurulum yapılandırmasında basedomain kaçırmış.

"Conntect" Tab sizin host Basedomain ayarlamak zorunda.

Example: Application is running under http://myapp.com/facebook/html than set the basedomain to myapp.com

Şimdi çerez doğru saklanır.

onun göndermek mümkün değil, *. php? PHPSESSID gibi olsun parametre üzerinden gönderirse php, bir çerez değeri üzerinden oturum kimliğini geçer ......

U başlığını kullanabilirsiniz eğer) yönlendirme, çözüm append (kaybolacağım. SID url,

gibi

header ("filan" SID.);

Bu size yardımcı olur umarım ..