Foros del Web » Programando para Internet » PHP »

Background Script & alert

Estas en el tema de Background Script & alert en el foro de PHP en Foros del Web. Estimados Tengo un script que hace una consulta a una DB MySQL y luego con el resultado monto un archivo XML / CSV / XLS, ...
  #1 (permalink)  
Antiguo 25/08/2015, 14:16
 
Fecha de Ingreso: abril-2014
Mensajes: 5
Antigüedad: 10 años
Puntos: 0
Pregunta Background Script & alert

Estimados
Tengo un script que hace una consulta a una DB MySQL y luego con el resultado monto un archivo XML / CSV / XLS, resulta ser que dependiendo la consulta el archivo final puede demorar entre 5 y 20 minutos en generarse.
Mi pregunta va ahora, es posible que el usuario mande la orden de generar el archivo y continue navegando otras secciones de la plataforma y una vez que el archivo este listo, para ser descargado "le avise".
La lógica sería algo así
* Seccion Files
----> Formulario de seteo de parametros para descargar
----> Submit de este formulario
----> Inicia proceso de generar el file (demora entre 5 y 10 min)
----> En este punto el usuario deberia tener la libertad de seguir trabajando en la plataforma.
---> Y una vez que este listo el file, generar un alert o algo similar para avisar que el proceso finalizo y el archivo esta disponible

Gracias
Rodrigo
  #2 (permalink)  
Antiguo 25/08/2015, 14:35
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Background Script & alert

Cita:
es posible que el usuario mande la orden de generar el archivo y continue navegando otras secciones de la plataforma y una vez que el archivo este listo, para ser descargado "le avise".
Sí, definitivamente es posible.

Todo lo que debes hacer es implementar Ajax para eso mismo.

Sin embargo, el procedimiento que genera dicho archivo debe correr en el background del sistema.

De otra manera aunque hagas una petición con Ajax esta demorará siempre.

Así que lo primero que debes resolver es lo último: el manejo de tareas asíncrono, basado en eventos, que se ejecute fuera del servidor web.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 27/08/2015, 14:35
 
Fecha de Ingreso: abril-2014
Mensajes: 5
Antigüedad: 10 años
Puntos: 0
Respuesta: Background Script & alert

Hasta el momento lo que hago es un ajax que dispara la acción; puedo pegarle a una url directamente a enviar un comando exec(), o ejecutar un sh con el script, lo que sea.

Lo que no se es como recuperar el return de eso, luego de X time; y como hago para "no bloquear" la pc del usuario esperando ese return
  #4 (permalink)  
Antiguo 27/08/2015, 16:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Background Script & alert

Cita:
Lo que no se es como recuperar el return de eso, luego de X time; y como hago para "no bloquear" la pc del usuario esperando ese return
Exacto.

Si no tienes un mecanismo basado en eventos implementado jamás podrás pasar de ese punto.

Lo más fácil sería una base de datos para registros dichos eventos, entonces con Ajax haces polling cada cierto tiempo en busca de nuevos eventos.

Al crear un evento lo registras en la base de datos, en cuanto acabe deberá actualizar una columna de estado.

Dicho estado es el que debes buscar en tu base de datos, por ejemplo, que traiga todos los eventos completados en relación al usuario actual, etc.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: background, formulario, mysql
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 18:26.