Foros del Web » Programando para Internet » PHP »

destruir sesiones

Estas en el tema de destruir sesiones en el foro de PHP en Foros del Web. Cual seria una manera de destruir sesiones cuando un usuario clickeara en un link, es decir, el usuario activa su sesion y cuando esta navegando ...
  #1 (permalink)  
Antiguo 23/06/2003, 06:45
 
Fecha de Ingreso: febrero-2003
Mensajes: 93
Antigüedad: 14 años, 9 meses
Puntos: 0
destruir sesiones

Cual seria una manera de destruir sesiones cuando un usuario clickeara en un link, es decir, el usuario activa su sesion y cuando esta navegando por su sesion le da al link home y la sesion de destruye.




muchas gracias
  #2 (permalink)  
Antiguo 23/06/2003, 06:56
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
Fácil y sencillo:
en PHP tienes la funcion: session_destroy();
colócala en la página de enlace (home en tu caso) siempre y cuando hayas inicialdo la sesión en la misma.

Esto es:
inicia sesión :
session_start();
destruye la sesión :
session_destroy();

suerte
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #3 (permalink)  
Antiguo 23/06/2003, 07:31
 
Fecha de Ingreso: febrero-2003
Mensajes: 93
Antigüedad: 14 años, 9 meses
Puntos: 0
Muchas gracias. Y si la persona escribe otra url distinta en el navegador
  #4 (permalink)  
Antiguo 23/06/2003, 07:59
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

Desde PHP no puedes controlar eso. Como mucho podrias especificar la duracion de las sesiones en el php.ini.

Lo que no se es si podrias usar el evento onunload de javascript para abrir una ventana que realice es deslogeo siempre y cuando la nueva URL no pertenezca a tu dominio.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 23/06/2003, 08:28
Avatar de bichomen  
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 874
Antigüedad: 14 años, 6 meses
Puntos: 2
hola, no entendido esto del session_destroy();

osea la idea seria algo como esto???? :

<a href="link" session_destroy();>salir</a>

lo digo pq si las páginas llevan la funcion:

session_start();

no seria logico (creo) poner

destroy();

pq eso cerraria la sesion una vez iniciada
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332
  #6 (permalink)  
Antiguo 23/06/2003, 08:42
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

Mira en el manual http://www.php.net/session-destroy

Es totalmente logico hacer primero el session_start() para luego a continuacion el session_destroy(). El session_start() carga la sesion, sin ella el session_destroy() no sabria que sesion destruir. Asi que el link seria a una pagina que solo tenga este codigo:
Código PHP:
<?php

// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();
// Unset all of the session variables.
$_SESSION = array();
// Finally, destroy the session.
session_destroy();

// redireccionamos al indice
header("Location: index.php");
exit;
?>
Creo que esta claro (a pesar de los comentarios en ingles).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 23/06/2003, 13:28
ivanff
Invitado
 
Mensajes: n/a
Puntos:
Pero el session destroy solo borra las variables registradas en esa session o borra tb la session pq yo necesito que se cambie o se borre el numero de la session.
  #8 (permalink)  
Antiguo 23/06/2003, 13:40
Avatar de ferent  
Fecha de Ingreso: junio-2002
Ubicación: Madrid
Mensajes: 633
Antigüedad: 15 años, 6 meses
Puntos: 0
el session_destroy() elimina la sesion actual, haz pruebas y verás como es imposible volver atrás una vez destruida.
__________________
Culto es aquel que sabe donde encontrar lo que no sabe.
  #9 (permalink)  
Antiguo 23/06/2003, 21:09
Avatar de bichomen  
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 874
Antigüedad: 14 años, 6 meses
Puntos: 2
pues josemi, tienes razón, gracias
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332
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 23:18.