Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/10/2005, 07:33
Avatar de txus35
txus35
 
Fecha de Ingreso: mayo-2005
Mensajes: 42
Antigüedad: 19 años, 9 meses
Puntos: 0
Gracias Flavio y jam1138, por contestar:

1- Cierto: "onBeforeUnload" no funciona bajo Netscape (no he probado Ff), pero me da igual. Centrémonos en IE en el que sí parece funcionar.

2- La línea : <body onBeforeUnload="eval("<? echo $result=@mysql_query($SentenciaSql);?>");">

Se trata de la inserción en la bbdd de la hora actual hecha desde javascript. Cuando se activa el evento "onBeforeUnload", el flujo de ejecución del código web se para en la parte cliente. Debido a ésto, debo hacer la inserción de la hora desde javascript, porque si hago lo siguiente:

<body onBeforeUnload="window.location='do_guarda_hora.ph p' ">

y en "do_guarda_hora.php" realizo el guardado de la hora en la bbdd, la operación no se lleva a cabo (lo he probado).

Y es curioso: si escribo un "alert" después de procesar los datos:

<body onBeforeUnload="window.location='do_guarda_hora.ph p'; alert('adios');">
Todo funciona correctamente pero hay que soportar la aparición del "alert", cosa que espanta a los visitantes.

3-No hay ventanas hijas ni padres (openers). Se trata de una galería de fotos. Los visitantes van navegando por galerías de fotos y fichas de fotos. Se trata de conocer con exactitud el tiempo que pasan en la web.

Como bien dices, lo que tengo que hacer es "...enviar la sentencia al servidor que registre la hora de salida", pero no sé cómo !!??.

Hago notar que lo logro sólo en parte cuando el visitante cambia de página en nuestra web. Pero no lo logro cuando el usuario cierra manualmente el navegador o cambia de página hacia otra que no es de nuestro sitio.

¿Se os ocurre alguna idea?, a ver si sacamos entre todos este tema tan interesante de cuantificar el tiempo de las visitas que nos hacen. Saludos a todos y gracias por colaborar.

Última edición por txus35; 02/10/2005 a las 08:06