当有人喜欢我的fb页面时显示弹出窗口

时间:2011-09-30 19:25:50

标签: javascript facebook popup facebook-like

当有人点击他的商店脸书粉丝页面上的“赞”按钮时,我的客户想显示带有优惠券代码的弹出窗口。他目前正在使用静态fbml。我之前从未使用过fb页面。所以对api一无所知。如果可能的话我更喜欢javascript。或者其他任何事情请一步一步解释。提前谢谢。

1 个答案:

答案 0 :(得分:0)

只有一种方法可以做到这一点。使用登录页面,它会检查页面是否被喜欢。您必须转到http://developers.facebook.com/apps创建应用程序。 Tis将允许您创建新的登录页面。您将需要一台服务器来托管它或使用它们现在提供的免费云服务。该应用程序需要使用https://developers.facebook.com/docs/sdks/中的一个SDK创建。使用PHP检查是否有人喜欢该页面,您使用的代码如

<?php
function parsePageSignedRequest() {
  if (isset($_REQUEST['signed_request'])) {
  $encoded_sig = null;
  $payload = null;
  list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2);
  $sig = base64_decode(strtr($encoded_sig, '-_', '+/'));
  $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true));
  return $data;
  }
  return false;
}
function parse_signed_request($signed_request, $secret) {
  list($encoded_sig, $payload) = explode('.', $signed_request, 2); 
  // decode the data
  $sig = base64_url_decode($encoded_sig);
  $data = json_decode(base64_url_decode($payload), true);
  if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') {
    error_log('Unknown algorithm. Expected HMAC-SHA256');
    return null;
  }
  // check sig
  $expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true);
  if ($sig !== $expected_sig) {
    error_log('Bad Signed JSON signature!');
    return null;
  }
  return $data;
}
function base64_url_decode($input) {
  return base64_decode(strtr($input, '-_', '+/'));
}
if($signed_request = parsePageSignedRequest()) {
if($signed_request->page->liked) {?>
 Page Liked - Display HTML
   <?php } else { ?>
 Dont Like Page - display html
<?php }
}
?>

现在,您可以在此处创建任何页面,以显示您非常希望的内容。