Ver Mensaje Individual
  #13 (permalink)  
Antiguo 06/08/2003, 08:02
Avatar de ferny
ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Decir que ya lo solucioné por "fuerza bruta"

El problema era que no hace el session_destroy(); por lo que no se destruia la sesión y no salía del script... así que tuve que tomar otro camino:

Al hacer login, defino una nueva variable de sesión:
Código PHP:
//definimos usuario_logueado verdadero si el usuario se loguea
$_SESSION['usuario_logueado']=true
Luego en mi script tengo para verificación:
Código PHP:
$nivel_acceso = array(1,2);
if (!
in_array($_SESSION['usuario_nivel'] , $nivel_acceso) || !$_SESSION['usuario_logueado'] ) {
// mostramos los contenidos no accesibles
} else {
// mostramos los contenidos accesibles

Y al hacer el logout, dado que no coge el session_destroy(); lo que hago es cambiar la variable nueva:
Código PHP:
// Cargamos variables
require ("aut_config.inc.php");
// le damos un mobre a la sesion (por si quisieramos identificarla)
session_name($usuarios_sesion);
// iniciamos sesiones
session_start();
// deslogueamos
$_SESSION['usuario_logueado']=false;
header("Location: ../intercambio.php"); 
Notar que en el logout no puse session_destroy() ya que si lo pusiera, luego no funciona el script (no desloguea) pero así sí funciona.

Ahora mis preguntas son: ¿sería esta la mejor solución? ¿Es grave no hacer el session_destroy()?

Gracias
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.

Última edición por ferny; 06/08/2003 a las 08:12