Fan-Gate в приложении Facebook, URL-адрес + вкладка Facebook Отображение пустого

У меня проблема с приложением Facebook. Я хочу сделать фан-гейт, когда кто-нибудь введет URL приложения, напр. apps.facebook.com/zoomcompetition/

Я не могу сделать это на вкладке, потому что он отображается пустым. но это работает на URL-адресе приложения, поэтому я хочу добавить фан-гейт в приложении назначить на странице Facebook. Это код

<?php

require 'src/facebook.php';
//require 'fbconfig.php';
require 'functions.php';

// Create An instance of our Facebook Application.
$facebook = new Facebook(array(
'appId' => ***************,
'secret' => **************,
));

// Get the app User ID
$user = $facebook->getUser();
if ($user) {
try {
// If the user is authenticated and logged-in
$user_profile = $facebook->api('/me');
//var_dump($user_profile);
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}

// If the user is authenticated then generate the variable for the logout URL
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();

?>

<!-- Insert Logged in HTML here -->
 <a href="<?php echo $logoutUrl; ?>">Logout</a>


 <?php
//Always place this code at the top of the Page

session_start();

if (!isset($_SESSION['id'])) {

// Redirection to login page  facebook

header("location: index.php");

}
echo ' Welcome '.$_SESSION['username'];  // or whatever you want your user to see.


$varri = "http://www.*****.ps";  
?>  

  <iframe src=<?php print $varri; ?> scrolling="auto" width=100% height=100% frameborder="0"> </iframe>


<?php
$user = $facebook->getUser();
if ($user) { 
 $ret_obj = $facebook->api('/me/feed', 'POST',
                                    array(
                                      'link' => 'https://www.************.com',

                                      'picture' => 'http://www.*******************.jpg',
                                      'caption' => "أهلا وسهلا!",

                                      'message' => ' Welcome '.$_SESSION['username'],


                                      'uid'=> $facebook->getUser()
                                 ));
}


?>


<?php
} else {
  $loginUrl = $facebook->getLoginUrl();
}


if (!empty($user_profile )) {

$username = $user_profile['name'];

$uid = $user_profile['id'];

$email = $user_profile['email'];

$user = new User();

$userdata = $user->checkUser($uid, 'facebook', $username,$email,$twitter_otoken,$twitter_otoken_secret);

if(!empty($userdata)){ 
session_start();

$_SESSION['id'] = $userdata['id'];

$_SESSION['oauth_id'] = $uid;

$_SESSION['username'] = $userdata['username'];

$_SESSION['email'] = $email;

$_SESSION['oauth_provider'] = $userdata['oauth_provider'];

//header("Location: home.php");
?>
<!--<!DOCTYPE>
<HTML>
<head>
<script> 
function run(){
    window.location.href = '/facebook/home.php';
}
</script>
</head>
<body onLoad="run()">
</body>
</html> -->
<?php
}

} else {

die("There was an error."); 
}

}

else {
// Generate a session if there is none.

$login_url = $facebook->getLoginUrl(array( 'scope' => ' read_stream, publish_stream, email'));
?>
<!DOCTYPE>
<HTML>
<head>
<script> 
function run(){
    window.location.href = '<?php echo $login_url ?>';
}
</script>
</head>
<body onLoad="run()">
</body>
</html>
<?php

}

?>

Можете ли вы помочь мне решить одну из следующих задач:

  1. Что мне нужно, чтобы на вкладке не отображалось "Пробел"? 2- Как я могу сделать фан-гейт для конкретного Facebook Pae, если кто-нибудь сразу перейдет на URL приложения?

1 ответ

Что мне нужно, чтобы на вкладке не отображалось "Пробел"?

Я предполагаю, что получится какой-нибудь вывод вместо ничего...?

Как я могу сделать фан-гейт для определенной страницы Facebook Pae, если кто-нибудь сразу перейдет на URL-адрес приложения?

Вы можете перенаправить со страницы холста на определенную комбинацию страницы / приложения через JavaScript (top.location.href = "FB-адрес вашей страницы / комбинированного идентификатора приложения"). И чтобы проверить, находитесь ли вы на странице холста, самый простой способ сделать это - дать ему дополнительный параметр GET в адресе страницы холста, который вы затем сможете оценить в своем коде.

Другие вопросы по тегам