Foros del Web » Programando para Internet » PHP »

cerrar sesión

Estas en el tema de cerrar sesión en el foro de PHP en Foros del Web. Hola a todos, estoy intentando escribir el código para desconectar al usuario de una página privada, pero no lo consigo El código que utilizo para ...
  #1 (permalink)  
Antiguo 06/07/2005, 04:22
 
Fecha de Ingreso: noviembre-2003
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 0
cerrar sesión

Hola a todos,

estoy intentando escribir el código para desconectar al usuario de una página privada, pero no lo consigo

El código que utilizo para la autentificación es el siguiente:
if(!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="Reserved area"');
header('HTTP/1.0 401 Unauthorized');
echo 'Authorization Required.';
exit;
} else {
// busco el usuario en una tabla MYSQL
}
Lo que estoy intentando para desconectar el usuario es:
if ($option =='LOGOUT'){
session_start();
session_destroy();
header("Location: http://www.nuevapagina.com");
};
El problemas es que cuando vuelvo a intentar entrar en mi pagina, no me pregunta de nuevo el usuario y la contraseña !!!

Muchas gracias por vuestra ayuda,
Fmato
  #2 (permalink)  
Antiguo 06/07/2005, 05:08
cartucho
Invitado
 
Mensajes: n/a
Puntos:
prueba a poner

$_SESSION = array();// Destruye todas las variables de la sesion

antes de

session_destroy();

saludos
  #3 (permalink)  
Antiguo 06/07/2005, 05:36
 
Fecha de Ingreso: noviembre-2003
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 0
Hola cartucho,

acabo de poner esa nueva línea antes del session_destroy(), no soluciona el problema

Muchas gracias de todas maneras
  #4 (permalink)  
Antiguo 06/07/2005, 07:33
 
Fecha de Ingreso: febrero-2004
Ubicación: España. Madrid
Mensajes: 454
Antigüedad: 13 años, 9 meses
Puntos: 0
ya lo pregunté una vez y nadie me lo aclaró...
pq poneis

if ($option =='LOGOUT'){
session_start();
session_destroy();
header("Location: http://www.nuevapagina.com");
};

un start y un destroy seguidos?
  #5 (permalink)  
Antiguo 06/07/2005, 08:06
 
Fecha de Ingreso: noviembre-2003
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 0
busqué en google y encontré un sitio que decía que hace falta siempre iniciar la sesión, incluso para destruirla después.

Efectivamente, si quito el session_start() me da un error al intentar destruirla, me dice que intentio destruir una sesión que no está iniciada !
  #6 (permalink)  
Antiguo 06/07/2005, 13:17
 
Fecha de Ingreso: febrero-2004
Ubicación: España. Madrid
Mensajes: 454
Antigüedad: 13 años, 9 meses
Puntos: 0
upssssss pues no entiendo nada....
vaya por delante que no he realizado nada con sesiones.... pero
digo yo que cuando se intenta destruir una sesion es pq se supone que esta iniciada.......
a no ser.... que para trabajar con sesiones.... al principio siempre hay que poner el start para cualquier operacion que se haga....
si es eso no digo nada
pero resulta chocante
  #7 (permalink)  
Antiguo 06/07/2005, 16:39
Avatar de Rebel001  
Fecha de Ingreso: enero-2004
Mensajes: 140
Antigüedad: 13 años, 11 meses
Puntos: 0
oye bro porque no te das un rol por los FAQ's de seguro ahi hay una respuesta
  #8 (permalink)  
Antiguo 07/07/2005, 03:09
cartucho
Invitado
 
Mensajes: n/a
Puntos:
el session_start() sobra, si te da error es porque no propagas bien el SID de la sesión(no porque no pongas el session_start() ). El sesion_start() sólo has de ponerlo si quieres mostrar o recoger el valor de alguna de las variables de sesión.

saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:51.