Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-03-2007
[David] David is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Málaga
Posts: 417
Poder: 21
David Va por buen camino
Smile Como borrar la cookie , cuando se cierra el navegador

Hola

cuando inicio un sesion con session_start(); ,se crea un archivo con los datos de la sesión . El caso es que quiero que se elimine ese archivo al cerrar el navegador .

con session_destroy(); se elimina , pero no sé si hay alguna manera de que se ejecute un session_destroy() cuando cierra el navegador.

He mirado en manuales , en foros , pero nadie me da una respuesta exacta .

Además como en el servidor , no se donde se guardan estas cookies , no sé si hay algún comando para borrar todas las cookies que haya , para hacer limpieza.

Un saludo
Responder Con Cita
  #2  
Antiguo 23-03-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Que cuando se cierre el navegador del usuario se ejecute "algo" en tu Servidor... creo que es por lo menos complicado y no muy "normal". Si no me equivoco las "cookies" de "sesión" (con un tiempo de expiración sin determinar o con valor "0") son borradas por el propio navegador cuando este se cierra.

¿Encontraste algún problema en este sentido? ¿Acaso el navegador conserva los datos de la sesión de un usuario? Lo único que se me ocurre es que el navegador conserve el "archivo de la cookie", pero, los datos... ¿conserva los datos de la "cookie" una vez cerrado el navegador?
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 23-03-2007
[David] David is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Málaga
Posts: 417
Poder: 21
David Va por buen camino
yo estas pruebas las hago en local , por que en el servidor no veo el lugar de las cookies , creo que no puedo acceder a él .

y trabajando en local , en mi ordenador , al cerrar el explorador no se borran las cookies ni los datos que contienen . El caso es que no se borra y vas preguntando por ahí y nadie dice en concreto que hacer para borrar la cookie al cerrar el navegador.
Responder Con Cita
  #4  
Antiguo 23-03-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

A ver. Si nos ceñimos al manual de PHP, sobre la función "setcookie" podemos ver lo siguiente:

Código:
bool setcookie ( string nombre [, string valor [, int expirar [, string ruta [, string dominio [, bool segura]]]]] )
Y si nos adentramos ya en el parámetro "expirar" esto es lo que dice el manual de PHP:

Cita:
Descripción:

La hora en la que expira la cookie. Este valor es una marca de tiempo Unix así que es el número de segundos recorridos desde el epoch. En otras palabras, es probable que este valor sea definido con la función time() más el número de segundos antes de que usted quiera que expire. O es posible usar mktime().

Ejemplo:

time()+60*60*24*30 definirá que la cookie expire en 30 días. Si no se define, la cookie expirará al final de la sesión (cuando el navegador sea cerrado).
Es decir, que si uno no define el tiempo de expiración de la "Cookie" (o se establece "-1" ó "0", que ahora no recuerdo), la "cookie" expirará cuando se cierre la sesión, cuando el navegador sea cerrado.

Ahora hay que aclarar cómo estableces tú las "cookies", puesto que es extraño que si estas deben expirar cuando se cierre la sesión del usuario, sin embargo no sea así y estén disponibles en sucesivas sesiones.

Algo raro ocurre. Pero ya digo, que yo sepa no existe una función para borrar una "cookie". Todo lo más para inicializar su valor, o para "caducarlas", de modo que el navegador se encarge de borrarlas una vez se cierre la sesión de usuario.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 26-03-2007
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 21
kayetano Va por buen camino
Hola

Puedes utilizar el evento de JavaScript ONUNLOAD para borrar las cookies de tu navegador, el problema no se produce solo cuando se cierra el navegador, sino que también sucede cuando se abandona una web.
Pues bien con este evento puedes hacer una llamada a una archivo PHP que borre la sessión y todos sus valores.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
como determinar el navegador por defecto Velia API de Windows 4 13-11-2005 16:54:10
Como obtener el navegador predeterminado El_Chava Internet 4 19-09-2005 19:14:26
Como crear un navegador web simple CeNtInElA Internet 4 25-02-2005 14:31:06
Recorrer Interior de una Cookie nekcab PHP 1 15-11-2004 07:33:58
Leer Cookie en delphi chavetaz Internet 6 08-01-2004 17:58:02


La franja horaria es GMT +2. Ahora son las 19:35:53.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi