Ver Mensaje Individual
  #7 (permalink)  
Antiguo 22/04/2009, 06:56
Bam_Margera
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 3 meses
Puntos: 13
Respuesta: [APORTE] Usar Facebook Connect

Bueno; lo he estado intentando...

bien, hasta ahora tengo tres ficheros para las sesiones: entra.php, sal.php y registra.php; de los que, creo, que para este tema basta tratar uno; el entra.php, verdad?

normalmente mis usuarios entran a una página que es panelcontrol.php y allí hasta ahora hacía:


<?
session_start();
if (isset($_SESSION['s_username'])) {
echo "Bienvenido a mi sitio has ingresado como ".$_SESSION['s_username'].", gracias por la visita!";
}else{
echo "Tu no estas autentificado dirígete a login.php o registrate en register.php";
header("location: sesiones/entra.php");
echo $_SESSION['s_username'];
} ?>


bien, y en entra.php:

Cita:
.
.
.
$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'") or die(mysql_error());
$row = mysql_fetch_array($query);
$_SESSION["s_username"] = $row['username'];
echo "Has sido logueado correctamente ".$_SESSION['s_username']." y puedes acceder al index.php.";
header("location: ../panelcontrol.php");
.
.
.
Entonces, lo que he hecho; ha sido en entra.php; justo debajo del formulario de entrada he añadido el boton de facebook connect;

y ahora, no me queda muy claro si debo poner esto en panelcontrol.php o entra.php:

Cita:
<? require_once '../facebook/facebook.php'; //Ruta de la api...
session_start();
$Aplicacion = 'laidedemiaplicación'; //No olvides ingresar la key de tu aplicación
$ClaveSecreta = 'miclavesecreta'; //No olvides ingresar la clave proporcionada por FB

$Facebook = new Facebook($Aplicacion, $ClaveSecreta);


If ($Facebook->get_loggedin_user())
{
$FID = $Facebook->require_login(); //obtenemos el id del user en FB

$user_details = $Facebook->api_client->users_getStandardInfo($FID, 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
$nombreusuario = $Nombre." ".$apellido;

$sql = " SELECT * FROM `users` WHERE idf=$FID ORDER BY fecha DESC";
$rs = mysql_query($sql, $con);
if(mysql_num_rows($rs)>0){

}else{
$sqlInsertNot = mysql_query("INSERT INTO users
(nombre, fid)
VALUES ('$nombreusuario', '$fid')",
$con) or die(mysql_error());
}

$_SESSION["s_username"] = $nombreusuario;





}






?>

La cosa es que, si intento iniciar mi sesión; la ventana ajax que se abre redirecciona a una que no existe... y si presiono F5 pues no detecta que he iniciado sesión...

luego lo voy a mirar con más detenimiento, pero, podeis decirme en qué página tengo que poner el último código? y si está bien lo que hago en él... :$


MILLONES de gracias :)