Estoy desarrollando una aplicación Facebook, y tengo un problema un tanto.. ¿extraño?...
El tema es el siguiente:
- Cuando entramos en la aplicación, salta la solicitud de permisos (porque en la aplicación compruebo la existencia o no de que el usuario haya pulsado el botón "me gusta"
---- Esto lo compruebo mediante:
Código PHP:
$signed_request = $facebook->getSignedRequest();
$signed_request["page"]["liked"] == true
Si me voy manualmente a cargar la aplicación SI que me funciona bien y me carga los datos completos en $signed_request["page"]["liked"] pero mediante la redirección de los permisos, NO.
Aquí pongo el código que estoy usando:
Código PHP:
error_reporting(E_ALL);
ini_set('display_errors', '1');
include_once('php/facebook_API/facebook.php');
include_once('php/facebook_API_config.php');
// Create facebook object
$facebook = new Facebook(array(
"appId" => FACEBOOK_APP_ID,
"secret" => FACEBOOK_SECRET_KEY,
"cookie" => true,
"domain" => 'phpfour.com'
));
// Setting facebook session
$session = $facebook->getSession();
$isFan = false;
$redirectLogin = false;
// If NOT session ...
if (!$session) {
$loginUrl = $facebook->getLoginUrl(array(
'canvas' => 1,
'fbconnect' => 0,
'display' => 'page',
'req_perms' => 'user_online_presence,friends_online_presence,email',
'next' => 'http://www.epromoda.com/facebook/master_maquillaje/maquillajeTelevision/',
'cancel_url'=> 'http://www.epromoda.com/facebook/master_maquillaje/maquillajeTelevision/no.php'
));
// Redirección a la URL de Login o no
$redirectLogin = "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
} else {
try {
$signed_request = $facebook->getSignedRequest();
if (isset($signed_request["page"])) {
$page_id = $signed_request["page"]["id"];
$page_admin = $signed_request["page"]["admin"];
$like_status = $signed_request["page"]["liked"];
$country = $signed_request["user"]["country"];
$locale = $signed_request["user"]["locale"];
if ($signed_request["page"]["liked"] == true) {
// echo("Eres FAN!!!");
$isFan = true;
} else {
// echo('No has pulsado "Me gusta"');
$isFan = false;
}
} else {
echo("No ha funcionado bien <strong>getSignedRequest()</strong>");
}
} catch (FacebookApiException $e) {
echo "Error:" . print_r($e, true);
}
}
Javier