2011-08-01 33 views
6

Tengo el siguiente código:Facebook PHP 3.0.1 SDK API, getUser() siempre == 0! ¿Por qué?

$facebook = new Facebook(array(
    'appId' => '###', 
    'secret' => '###' 
)); 
$user = $facebook->getUser(); 

$ usuario es siempre 0, mi AppId y secreto son a la vez 100% correcto. ¿Qué estoy haciendo mal?

+0

Agregué el ejemplo al host virtual de mi servidor local, agregué mi AppId y el secreto, y todavía. ¡NADA! –

+0

¿alguna vez redirigir al usuario a getLoginURL()? Los usuarios deben autenticar su aplicación antes de poder obtener su identificación de usuario. – squinlan

+0

Parece que algo está mal en mi configuración de Facebook, especialmente en los campos donde coloca la url del sitio y el dominio. Todavía investigando. –

Respuesta

4

asegúrese de que usted tiene una condición if para comprobar el estado del usuario

$user=$facebook->getUser(); 
if($user) 
//someactions 
else 
{ 
// redirect the user to login and authorize your application, if necessary 
header('Location:'.$facebook->getLoginURL()); 
} 

Por favor, compruebe el caso de funciones. Puedo estar equivocado.

+0

Sí, obviamente, pero no tiene sentido pasar a la sentencia if si getUser SIEMPRE devuelve 0. Esto es útil, sin embargo, ¡gracias por publicar! –

+0

... Quiero decir que mi punto es que debería poder iniciar sesión en Facebook, luego getUser() debería darse cuenta de que estoy conectado con Facebook. –

+0

No del todo. Si a su aplicación no se le concede acceso al usuario (ya sea usted o cualquier otra persona), getUser() no debe devolver nada excepto 0. Una vez que se autentica (reenviar a getLoginUrl), su aplicación tiene acceso y debe devolver un usuario. –

0

he tenido el mismo problema de una vez ... Y acabo logrado resolverlo mediante la corrección el problema con mi sesión

+0

Esto no responde la pregunta. –

+2

GEEEEEEE ESTA RESPUESTA AYUDA REALMENTE A –

+0

@BeauGrantham ¿Cómo puede decir que no lo ayuda? Acabo de descubrir que Session FB-SDK está creando un problema de obtención y esto se solucionó administrando mi sesión correctamente durante toda la sesión. –

Cuestiones relacionadas