Foros del Web » Programando para Internet » PHP »

Mostrar contenido en FaceBook si son fans o no

Estas en el tema de Mostrar contenido en FaceBook si son fans o no en el foro de PHP en Foros del Web. Hola a todos, he creado un aplicación de Facebook usando iFrames. Quiero mostrar un contenido u otro dependiendo de si los usuarios hacen click en ...
  #1 (permalink)  
Antiguo 23/09/2011, 08:47
 
Fecha de Ingreso: agosto-2003
Mensajes: 122
Antigüedad: 21 años, 2 meses
Puntos: 0
Pregunta Mostrar contenido en FaceBook si son fans o no

Hola a todos,

he creado un aplicación de Facebook usando iFrames. Quiero mostrar un contenido u otro dependiendo de si los usuarios hacen click en me gusta o no.

He seguido decenas de tutoriales que hay por Internet y en todos hablan de hacerlo de forma parecida. Por ejemplo, esta:

Código PHP:
<? require 'facebook.php';

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

$signed_request $_REQUEST['signed_request'];

$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 (
$like_status)
// If a fan is on your page
if ($like_status) {
$a file_get_contents("index.html");
echo (
$a);
} else {
// If a non-fan is on your page
$a file_get_contents("notafan.html");
echo (
$a);
}
Bueno, parece sencillo pero no hay manera. No consigo hacerlo funcionar.

¿Alguien con experiencia en el tema puede ayudarme?

¡Gracias!
  #2 (permalink)  
Antiguo 23/09/2011, 09:07
 
Fecha de Ingreso: septiembre-2011
Mensajes: 219
Antigüedad: 13 años, 2 meses
Puntos: 31
Respuesta: Mostrar contenido en FaceBook si son fans o no

Esta todo en $signed_request['page']['liked']

Código PHP:
Ver original
  1. <?php
  2.      $signed_request = $_REQUEST["signed_request"];
  3.      list($encoded_sig, $payload) = explode('.', $signed_request, 2);
  4.      $data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
  5.     if(@$data['page']['liked'] == '1'){
  6.         echo '<script>location.href = "http://www.fan.com"</script>';
  7.     }else{
  8.         echo '<script>location.href = "http://www.nofan.com"</script>';
  9.     }
  10. ?>
  #3 (permalink)  
Antiguo 23/09/2011, 09:20
 
Fecha de Ingreso: agosto-2003
Mensajes: 122
Antigüedad: 21 años, 2 meses
Puntos: 0
Respuesta: Mostrar contenido en FaceBook si son fans o no

Gracias cachusan. Eso ya lo sabía. El problema es que no funciona.

$signed_request["page"]["liked"] me sale vacío, así que hay algo que no consigue leer.

La app_id está bien y también la app_secret.
  #4 (permalink)  
Antiguo 23/09/2011, 09:23
 
Fecha de Ingreso: septiembre-2011
Mensajes: 219
Antigüedad: 13 años, 2 meses
Puntos: 31
Respuesta: Mostrar contenido en FaceBook si son fans o no

coke_135, ojo que lo tenes que hacer en una fanpage, desde la app tipo canvas no te lo va a mostrar, solo devuelve valor si esta como si fuese una de las viejas pestañas.

De todos modos voy a revisar la api, es normal que hagan cambios cada 5 minutos o falle algo durante el día.
  #5 (permalink)  
Antiguo 23/09/2011, 13:03
 
Fecha de Ingreso: agosto-2003
Mensajes: 122
Antigüedad: 21 años, 2 meses
Puntos: 0
Respuesta: Mostrar contenido en FaceBook si son fans o no

cachusan, tengo un app en un iframe y según todo el mundo en Internet debería funcionar así.

¡Muchas gracias!
  #6 (permalink)  
Antiguo 23/09/2011, 14:23
 
Fecha de Ingreso: agosto-2003
Mensajes: 122
Antigüedad: 21 años, 2 meses
Puntos: 0
Respuesta: Mostrar contenido en FaceBook si son fans o no

Estoy haciendo pruebas y creo que ya he encontrado el problema. La app eran 4 ficheros PHP que se enlazaban entre si y me estaba funcionando solo la primera página, la que realmente está puesta como origen de la app en Facebook. El resto, nada.

Así que me va a tocar meter todo en un fichero y mostrar un contenido u otro con jQuery.

¡Gracias por la ayuda de nuevo!

Etiquetas: facebook
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:34.