0

我在下面有脚本来检查用户是否是我的粉丝页面。如果是,他们将被重定向到另一个页面。如果没有,他们将在继续之前显示一个喜欢的框来喜欢该页面。

该脚本有时有效,但有时无效。我希望这与 header() 有问题,因为它出现 500 内部服务器错误。但是,我已经放了 ob_start()。这不应该解决问题吗?

<?
ob_start();
require_once('../../src/facebook.php');

$app_id = "APP_ID";
$app_secret = "APP_SECRET";

// Init facebook api.
$facebook = new Facebook(array(
    'appId' => $app_id,
    'secret' => $app_secret,
    'cookie' => false,
));

//Facebook Authentication part
$user_id = $facebook->getUser();
    $loginUrl   = $facebook->getLoginUrl(
        array(
            'scope'         => 'publish_stream, user_likes'
        )
);

if (!$user_id) {
    echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
    exit;
}

$likes = $facebook->api("/me/likes/PAGE_ID");
if( !empty($likes['data']) ){
    ob_end_clean();
    header ('location: xyz.php');      //if is a fan, redirect to xyz.php
    exit;
} else {
    continue;                          //if not a fan, show below html code
}

?>

<HTML>
.
.
Please like page first
.
.
</HTML>
4

0 回答 0