Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/06/2012, 12:35
Avatar de jlcm_2000
jlcm_2000
 
Fecha de Ingreso: diciembre-2006
Mensajes: 21
Antigüedad: 18 años
Puntos: 1
Pregunta Detectar cierre del Navegador

Hola, disculpen tengo un problema con un CMS en PHP que corre unas aplicaciones de Inventarios que diseñe para pedidos de un negocio, el problema es que el gestor de pedidos puede dejar abierto pedidos sin procesar los cuales afecta ciertos valores de disponibilidad en la base de datos del negocio.

Si el usuario procesa o cancela un pedido y cierra sesion o el navegador no hay problema pero si queda un pedido abierto es necesario que devuelva los valores de disponibilidad, esto lo hace un Script en PHP que ya tengo pero Obviamente el PHP nunca se entera si el cliente cerro el navegador o se salio del sitio, por eso recurro a JavaScript con apoyo de Ajax ejecuten mi script en php.

Las funciones en JavaScript, Ajax y PHP ya las tengo y funcionan perfecto solo necesito el evento disparador, trate usando onbeforeunload y hace exactamente lo que quiero, si el usuario cierra el navegador o la pestaña del sitio ejecuta mis scripts, el problema es que este evento se ejecuta siempre mientras el usuario navega en el sitio ejecutando siempre los scripts. Yo corro mis funciones de la siguiente manera:

Código:
<head>
<script type="text/javascript">
//< ![CDATA[

 function closeIt() {
  /* EJECUTA SCRIPT PHP USANDO AJAX */ 
 }

window.onbeforeunload = closeIt;
 //]]>
</script>
</head>
Agradeceria mucho si alguien tiene una idea de como correr mi funcion solo al cerrar el navegador o la pestaña del sitio, cualquier idea orientacion sobre esto y gracias de antemano.