Foro de programación en PHP
¿Como alcanzar a ejecutar script PHP al cerrar el navegador/ventana o pestaña?
| Autor: sebastian.faundez Publicado: 28-11-2010 09:03 PM |
|
|
Eso estimados, Estoy desarrollando un cuestionario/formulario online con PHP y MySQL para una ONG en donde estoy realizando un voluntariado (hermosa experiencia), pero me topé con el siguiente problema y no se si alguien puede clarificarme un poco el panorama. La cuestión es que el cuestionario/formulario que debe completar el usuario tiene varios segmentos ya que es un poco largo, entonces el usuario puede completar el formulario en varias sesiones (idealmente en una sola, pero quiero darle flexibilidad a la apliación), entonces si el usuario cierra sesión formalmente, es decir, presionando sobre el link "Cerrar Sesión" no hay problema ya que en ese caso se ejecuta el sript PHP salir.php que es donde aparte de destruir la sesión evalúo el estado de completitud del formulario y en función de eso le envío un email al usuario recordándole que su formulario aun esta incompleto o en su defecto un email diciéndole que sus datos están completos pero todo esto pensando en que el usuario cerrará sesión dando click en el link Cerrar Sesión como dije antes, entonces lo que necesito hacer es poder ejecutar la misma lógica si el usuario cierra la pestaña o ventana o del navegador o el navegador mismo o el botón X o cualquiera de esos casos osea la idea es ponerse en el peor de los casos. Entonces mi idea es que la aplicación detecte cuando el usuario cierra la pestaña/ventana o el navegador completo y poder cerrar la sesión correctamente pero ejecutando la lógica que señalo. Por favor si alguien puede darme alguna luz le estaré muy agradecido saludos cordiales Sebastián Faúndez actualmente en el Amazonas en Perú |
|
| Autor: Ego Publicado: 30-11-2010 02:26 AM |
|
| En principio no se puede, ya que php es un lenguaje que se ejecuta en el servidor. Por tanto tendras que apoyarte en otra cosa más para hacerlo. Javascript es una opción. En el evento onclose de la ventana tendrás que hacer la llamada a tu código php. suerte. |
|

