Ben hiç bana yardım etmezsen öğreticiler / documentations ton ile kazma yoruldum.
Ben şimdi ne (her yönetici kontrol panelinin içine yerleştirilen) var:
- Kullanıcı, doğru hesabı (verilen haklar ile sayfanın yöneticisi) oturum açtıysa, her şey iyi çalışıyor, sayfa post bürünmüş sitesi olarak yayınlanmıştır.
- O başka hesaba oturum açtıysa, hiçbir şey olmuyor. Site yaptığı duvara onu yönlendirir.
- O herhangi bir hesaba oturum değilse, o facebook login yönlendiriliyorsunuz oluyor - o doğru hesap üzerine açtığında, o (onun formu temizlemek gerekir, çünkü kötü bir çözüm) ACP döner
Ben başarmak istiyorum:
- Oturum açarsanız, her şey olduğu gibi
- Spesifik (doğru) hesabına giriş ile başka kapat
Şu anda ben sadece PHP kullanıyorum ama JS ile çözüm izin verilir.
Benim kod:
<?php
/*(...)*/
$facebook = new Facebook(array(
'appId' => $apiid,
'secret' => $secret,
'cookie' => true,
));
$session = $facebook->getSession();
$me = null;
if ($session) {
try {
$uid = $facebook->getUser();
$me = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
}
if($me) {
//In order to post to the page later on we need to generate an Access Token for that page, to do this we get me-accounts in the following api call
$accounts = $facebook->api('/me/accounts');
//Loop through the array off accounts to find the page with a matching ID to the one we need
foreach($accounts['data'] as $account){
if($account['id'] == PAGEID){
$ACCESS_TOKEN = $account['access_token'];
}
}
}
$message=$data['facebook_text'];
$attachment = array(
'message' => $data['facebook_text'],
'name' => $data['name'],
'description' => '',
'link'=>$someurl,
'access_token' => $ACCESS_TOKEN
);
if($image_url != NULL) $attachment['picture'] = $image_url;
try {
if($facebook->api('/PAGEID/feed', 'post', $attachment))
{
//other stuff
}
} catch (FacebookApiException $e) {
error_log($e);
//other stuff
}
}
else
{
$login_url = $facebook->getLoginUrl();
header("Location: $login_url");
exit;
}
/* (...) */
?>
O form içinde böylece tüm kaybolur data'll çünkü çözüm, her yerde yönlendirme olamaz.