Foros del Web » Programando para Internet » PHP »

Variables de sesion, ajax y un eneredo lindo

Estas en el tema de Variables de sesion, ajax y un eneredo lindo en el foro de PHP en Foros del Web. buenas gentes del foro, tengo la siguiente situación a ver que les parece. Estoy generando un archivo excel desde symfony que para eso consulta la ...
  #1 (permalink)  
Antiguo 28/09/2011, 12:13
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Exclamación Variables de sesion, ajax y un eneredo lindo

buenas gentes del foro, tengo la siguiente situación a ver que les parece.

Estoy generando un archivo excel desde symfony que para eso consulta la base de datos, recorre los datos y arma el excel. Dicho proceso se toma un tiempo largo, o al menos lo suficientemente largo como para que los empleados se violenten con los monitores.

Para evitar esto, lo que se penso es, generar una variable de sesion para ir llenandola por como avanza el proceso y por ajax (jquery) consultar la variable de sesion armar un pequeño html y mostrar ese pequeño html en pantalla.

Hasta ahí todo lindo, el problema, hasta que no termina la exportación propiametne dicha, no se puede acceder a la variable de sesión y no genera el html para tranquilizar a los usuarios.

Principalmente me gustaría saber si me esta faltando algún concepto teórico que este generando esta situación y / o alguna idea para sobrepasar este problema.

Desde ya muchas gracias.

Rulo
  #2 (permalink)  
Antiguo 28/09/2011, 12:17
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Variables de sesion, ajax y un eneredo lindo

Pero... que pasa si en vez de armar el excel directamente en la pagina, no lo armas desde un popup...

Asi en la pagina que llama al popup pones una imagen de "loading" o muchos textos que vayan cambiando a medida que pasa el tiempo (como el inicio de Sims).

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 28/09/2011, 12:54
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Variables de sesion, ajax y un eneredo lindo

lo que te propondria para calmar a los usuarios es mostrarle un pequeño paginado de digamos unas 10 lineas excel abajo le pones un cargando... y cuando este termine le mandas el descargar archivo completo. creo que con eso te basta, no se si sera posible hacer un script con un cuenta regresiva del tiempo que se demorara la consulta completa ya estaría mucho mejor, pero es lo que se me ocurre, por lo menos para calmar a las bestias XD

saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #4 (permalink)  
Antiguo 28/09/2011, 13:05
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Respuesta: Variables de sesion, ajax y un eneredo lindo

La opción de poner un gif animado con una pelotita que da vueltas para que no se desesperen es una opción que tenemos en mente aunque la idea principal es ir mostrando por cual pestaña (el excel tiene varias pestañas) va ...

Igualmente se agradecen las opciones, si sale alguna nueva, excelente.

Estoy pensando en que puede llegar a existir alguna opción desde el punto de vista del javascript, pero todavía no encontre la respuesta ...

Rulo
  #5 (permalink)  
Antiguo 29/09/2011, 11:46
 
Fecha de Ingreso: marzo-2010
Mensajes: 54
Antigüedad: 14 años
Puntos: 0
Respuesta: Variables de sesion, ajax y un eneredo lindo

Bueno luego de buscar bucar, probar romper y arreglar tengo la respuesta y la posteo porque siempre a alguno le puede llegar a servir.

Aparentemente, cuando se esta trabajando con variables de sesion, PHP bloquea el acceso a la misma desde otro lugar hasta que no se finalize el proceso (entiendase algún function) propiamente dicho.

En este caso en particular como habia un ciclo para exportar cada pestaña lo que hice fue:

foreach($lala as $la){
session_start();

.
.
.
.
.

$_SESSION['nombreVariable'] = $variable;
session_write_close();
}

y en cualquier otro *.php un echo $_SESSION['nombreVariable']; el cual era llamado periodicamente por un javascript via AJAX. Aparentemente hay un bloqueo que de esta manera desaparece.

Si es la mejor opción o no, no lo se, por ahora se que, en mi caso, funciona y si le sirve a alguien, excelente :)

Disfruten :)

Rulo

Etiquetas: ajax, html, lindo, variables, usuarios
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 21:52.