Привет, ребята, я только что нашел решение, которое работает безупречно после нескольких дней борьбы с этой проблемой, поэтому я решил поделиться им.
Это часть решения, предложенного DMCS - переменные сеанса.
Сначала вы должны сохранить ВСЕ данные подписанного запроса в переменной сеанса e следующим образом:
session_start():
$signedRequest = $facebook->getSignedRequest();
if(isset($signedRequest)) $_SESSION['signedRequest'] = $signedRequest;
else $signedRequest = $_SESSION['signedRequest'];
Затем вы можете получить доступ ко всей информации на более поздней стадии (например, на вкладке Tab).Просто выполните print_r ($ signatureRequest), чтобы проверить, как получить доступ к необходимой информации.Например, чтобы проверить, понравилась ли пользователю страница, просто сделайте:
if (!$_SESSION['signedRequest']['page']['liked']) {
//Content for users that haven't liked the page
}
Здесь важно сохранить весь $ signatureRequest в переменной сеанса.Сначала я попытался сохранить только необходимую информацию в переменной сеанса, но это не сработает.Я не знаю почему.
Надеюсь, это кому-нибудь поможет.