Estoy intentando integrar Facebook Connect... bueno, de hecho creo que ya quedó integrado, conecta, obtiene el uid, el basic profile, etc…
Pero tengo un problema, y es que si estando logueado con Facebook Connect, yo cierro la sesión en Facebook.com, al volver a mi sitio y recargar, me sale el siguiente error:
Fatal error: Uncaught exception 'FacebookRestClientException' with message 'Session key invalid or no longer valid'
Entiendo que se debe a que yo sigo intentando trabajar con esa sesión, que fue cerrada desde Facebook.com, entonces dicha sesión ya no existe y por eso se produce el error…
Mi pregunta es… ¿Cómo averiguar si la sesión todavía existe o no existe? Es decir… ¿Cómo saber si el usuario cerró sesión en Facebook y asi poder cerrarla en mi sitio y de esa forma evitar el error?
Desde ya, muchas gracias!!
Saludos.
Bueno... ya lo resolví

Finalmente lo que es hago es catchear el error y listo...

No se si es la solución más óptima, pero funciona bien...
Si alguien tiene el mismo error que tenía yo, aquí les dejo el source code comentado:
h t t p : // está separado porque el foro piensa que a través de las etiquetas PHP estoy pasando URLs de Spam xD
Código PHP:
   <?php
require_once 'facebook/facebook.php'; //Ruta de la api...
 
$Aplicacion = 'Ingresa aquí la Key que identifica a tu aplicación...'; //No olvides ingresar la key de tu aplicación
$ClaveSecreta = 'Ingresa aquí tu SecretKey...'; //No olvides ingresar la clave proporcionada por FB
 
$Facebook = new Facebook($Aplicacion, $ClaveSecreta);
 
$appcallbackurl = "H T T P : //".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
 
$Logueado = 0; // Declaramos que NO estamos logueado (más abajo definiremos si es que lo estamos o no)
 
If ($Facebook->get_loggedin_user()) //Obtenemos los datos del usuario logueado (si es que existen)
{ //si existen
    try //probamos de obtener los datos de la sesión
    {
        $uid = $Facebook->require_login(); //obtenemos el id del user en FB
                        
        $user_details = $Facebook->api_client->users_getStandardInfo($uid, array('last_name','first_name')); //intentamos obtener un poco de información del perfil
        $Nombre = $user_details[0]['first_name']; //Almacenamos los datos del array
        $Apellido = $user_details[0]['last_name']; //Seguimos con la matriz, esta vez almacenamos el Apellido
        $Logueado = 1; //Declaramos que SI estamos logueado (aunque lo estamos probando todavía)
    }
    catch(Exception $e) //Intentamos capturar algún error debido a si la sesión venció, o el usuario cerró sesión desde FB o cualquier otro motivo que haya producido la caducación de la sesión y por lo tanto un error
    {
        $Logueado = 0; //si es asi, si pasó algo de eso, informamos que entonces NO estamos logueados (antes por existir un $uid dijimos que lo estabamos)
    }
}
 
If ($Logueado == 1) //en caso de existir un $uid y no haber pasado por la captura del error, la variable $Logueado tendrá el valor de 1 que le asignamos más arriba, asi que por lo tanto mostramos lo que corresponda a estar logueados.
{
    ?>
    Bienvenido <b><? echo "$Nombre $Apellido"; ?></b>
    <br><br>
    Seguro que lo más conveniente será almacenar tu $uid (<? echo $uid; ?>) en la base de datos y trabajar contigo como si fueras un usuario registrado via web.
    <br><br>
    Saludos!
    <?
} 
else //Si $Logueado es diferente a 1, porque la variable $uid está vacía o porque se produjo el error debido a la sesión caducada, entonces mostramos el botón de Facebook Connect...
{
    ?>
    Bienvenido Desconocido, por favor, presiona sobre el botón e inicia sesión
    <br><br>
    <fb:login-button length="long" onlogin="location.href='<? echo $_SERVER['REQUEST_URI'];?>'"></fb:login-button>
    <script type="text/javascript" src="H T T P : //static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php"></script>
    <script type="text/javascript">
    FB.init("Ingresa aquí la Key que identifica a tu aplicación...","xd_receiver.htm");
    </script>
    <?
}   
?>    
Saludos
 
  
 
 
 
