Pass parameter to an iframe embedded Fan Page in Facebook
Those who use their on hosting inside an iframe for Facebook Fan page, there is a mechanism to pass additional parameters to your iframe page if you need to create a deep URL.
A normal Fan page of Facebook would like this:
https://www.facebook.com/apps/application.php?id=xxxxxxxxxx&sk=app_XXXXXX
This Url will call your domain, say example.com inside the iframe to load the page.
Each time the iframe is loaded, Facebook do a POST to this iframe URL with some data which we can use to identify the status of the user, eg, whether the user already liked this page, or any other parameter is passed through the fan page url.
Facebook keep app_data variable for developers to pass additional parameters to your iframe page.
eg: https://www.facebook.com/apps/application.php?id=xxxxxxxxxx&sk=app_XXXXXX&app_data=mydata
To retrieve this information, in PHP, use can use the following code:
<?php
if(isset($_REQUEST["signed_request"]))
{
$signed_request = $_REQUEST["signed_request"];
// $_POST also work, but better with $_REQUEST
list($encoded_sig, $payload) = explode(‘.’, $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, ‘-_’, ‘+/’)), true);
if(isset($data['app_data']))
{
$mydata = $data['app_data']; //here you can get the value you passed
}
}
?>
Check my article here to see how you can get the ‘like’ status using PHP
Courtesy: From various online sources
Thanks
Sajith
