• Publicidad

Forzar un cambio de pantalla.

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

Forzar un cambio de pantalla.

Notapor macgregor » 2005-11-07 07:42 @362

Hola.

Ultimamente trabajo con paginas web que al clicar en algun boton llaman a cgi's que trabajan con bases de datos.

El caso es que hasta que el cgi no termina no muestra por pantalla nada.

Quiero decir que en morcilla y notescapes se cambia el puntero por la flecha y el reloj de arena y no se carga la nueva pagina hasta que no ha terminado el cgi. (con el mocosoft explorer nisiquiera cambia el puntero).

Normalmente cargo el fondo de la pagina con css y algun elemento html como una leyenda de la tabla en la que se mostraran los datos que hay en la DB.
Existe alguna forma de forzar a que el buffer se vacie en pantalla con esos elementos html mientras terminan los procesos que acceden a BD??

De esta manera el usuario no se queda esperando sin notar cambios.

Si me podeis hechar una mano estare muy agradecido.

Un saludo.
MACGREGOR [TM]
Avatar de Usuario
macgregor
Perlero nuevo
Perlero nuevo
 
Mensajes: 80
Registrado: 2004-12-09 07:32 @355
Ubicación: españa

Publicidad

Notapor explorer39 » 2005-11-07 08:00 @375

$|++;
explorer39
 

Notapor macgregor » 2005-11-07 09:26 @435

Gracias por el intento, pero ya habia provado a cambiar el valor de $|
cambiando el 0 que lleva por defecto por un 1 y el resultado era el mismo.

se queda pensando en la pagina web que llama al cgi y cuando este acaba de cargar se actualiza la pagina.

Alguien sabe como puedo forzar a que "salte" al cgi y se empieze a dibujar la nueva pagina web?

Gracias.
MACGREGOR [TM]
Avatar de Usuario
macgregor
Perlero nuevo
Perlero nuevo
 
Mensajes: 80
Registrado: 2004-12-09 07:32 @355
Ubicación: españa

Notapor explorer39 » 2005-11-07 10:29 @478

¿No estarás detrás de un proxy? Hasta que el proxy no termine de recibir la página, no te la mostrará a tí...
Supongo que en tu cgi, aparte de quitar el buffer de salida, nada más enviar el header(), enviarás la primera parte de la salida html. Atención si la salida de los datos de tu BD los vas a pintar DENTRO de una estructura formada por tablas o tablas anidadas. En algunos navegadores no se pinta nada hasta que el navegador sepa cúal es el contenido (porque de esa forma sabe pintar la tabla -por los anchos de las celdas-). En otros navegadores más modernos, les basta con recibir la información por LÍNEAS completas de la tabla. En cuanto reciben los contenidos de una línea, la pinta.
explorer39
 


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados