RE:Sesiones Para Diego Romero
Hola Diego,
ya tengo un poco más claro lo de las sesiones pero aún me funciona a medias, te cuento, en la página estoy permitiendo un máximo de 3 sesiones, y como me fue complicado manejar la cantidad de sesiones que tiene un usuario en un momento dado con cookies, lo que hice fue adicionar un campo en la BD que llevara ese contador el cual se alimenta cada vez que se inicia una sesion basandome en el id del usuario que se loguea, hasta ahí bien, aunque ni tanto porque a veces no funciona correctamente no sé porque (ej: hace rato no me generó la cookie al iniciar la sesión, ...qué sería??, no sé!!, despues funcionó normalmente), ahora, al momento de ir cerrando sesiones lo mando a una página llamada logout.php que me opera dicha cantidad de sesiones del usuario restandole una a medida que las van cerrando, con lo que sé cuantas sesiones tiene un usuario, el problema es que en logout.php no sé por qué cuando abro las 3 sesiones permitidas, va restando bien, pero al momento de cerrar la última, no me la resta y queda el campo en la BD en 1, cosa que no es cierta, pero fijate que si abro 2 o solo 1, ahí si funciona bien, te coloco el código de logout.php para que le des un vistazo:
Aparentemente esta bien el código, ...qué opinas???
<? session_start();
require("conecta_sql_radio.php");
$q = new conectemysql("impresion-guias");
$q1 = new conectemysql("impresion-guias");
$total_sesiones = 0;
$sql = "SELECT a.Sesiones_Abiertas FROM usuarios a, perfiles b
WHERE a.Usuario = '$UsuarioMIG'
AND a.Id_perfil = b.Id_perfil";
$q->ejecutar($sql);
$q->cargar();
$total_sesiones = $q->dato(0);
if($total_sesiones >= 3){
#Esto esta asi porque al momento de ser 3 sesiones, en la BD
#el campo queda en 4.
$total_sesiones = 2;
}else{
$total_sesiones = $total_sesiones - 1;
}
$sql1 = "UPDATE usuarios SET
Sesiones_Abiertas = '$total_sesiones'
WHERE Usuario = '$UsuarioMIG'";
$q1->ejecutar($sql1);
$q1->cargar();
session_destroy();
?><script>location.href = "inicio.php";</script>
...estas sesiones a veces como que son un karma!!!