passing custom parameters to facebook fan page tab

29,095

Solution 1

Facebook passes in your data as part of the signed_Request data. Here is how you would retrieve it using PHP:

<?php 
require 'facebook.php';
$app_id = "YOUR APP ID HERE";
$app_secret = "YOUR SECRET KEY HERE";


$facebook = new Facebook(array(
        'appId' => $app_id,
        'secret' => $app_secret,
        'cookie' => true
));


// THE MAGIC SAUCE
$signed_request = $facebook->getSignedRequest();

$page_id = $signed_request["page"]["id"];
$like_status = $signed_request["page"]["liked"];
// HERE IS A STRING OF YOUR APP DATA.
$app_data = $signed_request["app_data"];

echo '$app_data = '.$app_data;
?>

This example requires the Facebook PHP api and will write your app_data into the browser window where you can marvel in all its glory.

Solution 2

Oh wow, I didn't know about the app_data parameter.
Here's another method for whatever it's worth:
http://iamskwerl.com/tech/2011/11/passing-query-variables-to-facebook-fan-page-tabs/

Solution 3

There is a solution available although I have not tried it but hope it works http://ikorolchuk.blogspot.com/2011/03/facebook-fan-page-pass-parameter-to.html

Share:
29,095

Related videos on Youtube

sreejith
Author by

sreejith

A Programmer

Updated on July 09, 2022

Comments

  • sreejith
    sreejith almost 2 years

    I'm unable to get custom parameters send to my facebook fan page tab.

    I'm using php and is passing like this:

    http://www.facebook.com/pages/{page-name}/?sk=APP_ID&pass=1

    but I'm unable to read the parameter pass

    Sreejith

    • ifaour
      ifaour about 13 years
      I suppose your application is inside an IFrame inside your fan page! this is why you can access those parameters.
    • sreejith
      sreejith about 13 years
      @ifaour, yes it's inside an IFrame
  • luchaninov
    luchaninov over 12 years
    You can add facebook.com/blabla?app_data=value1|value2|value3 and then do explode('|', $signed_request['app_data'])
  • borisdiakur
    borisdiakur almost 12 years
    Your approach is a great solution, when you have no server side component in your application. Thumbs up : ]
  • jontro
    jontro over 9 years
    The link seems dead. It might we worth adding the answer here direct instead of redirecting.