• Publicidad

No cargar otra vez toda la página

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

No cargar otra vez toda la página

Notapor digitallxd » 2007-07-28 04:49 @242

Buenas, no sé si esta duda es de Perl, pero aquí la dejo, si un caso, se mueve y listos:

El caso es que estoy haciendo una página que lo que hace es mostrarme una serie de datos (pings y cosas así) y entonces al final de la página pongo un botón "MÁS INFORMACIÓN" y quiero que al clickar ahí se cargue un trozo más de la página, he pensado que podría hacerlo más o menos así:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
use CGI::Param

my $more=param("more");

print << "END";

print de toda la página, con sus cosas que haga y tal
<a href="?more"> mas info</a>
END


if (defined(more))
{


printar toda la información

}
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


¡Es un esbozo, eh! pero no sé sí eso me volvería a cargar toda la página otra vez o qué, o solo esa parte de la página, que es lo que quiero, ¿cómo lo veis?
digitallxd
Perlero nuevo
Perlero nuevo
 
Mensajes: 17
Registrado: 2007-07-12 06:40 @319

Publicidad

Notapor explorer » 2007-07-28 05:25 @267

Se podría... pero es difícil... tendrías que definir la variable especial $| a uno para que Perl no cachee las salidas, y esperar que el cliente web del usuario te pinta la página a medio llegar... es algo complicado.

Hoy está de moda lo del sistema Ajax: al pulsar el botón hay un JavaScript que hace una petición al servidor (CGI o HTML normal) y el resultado se lo asigna a esa parte (un iframe o un div). No recargaría la página. Pero en el formulario donde está el botón hay que indicar que no lo haga (hacer un return false(); después del evento submit del botón.

Creo recordar que por este foro ya he puesto algo parecido sobre este tema. En tu caso consiste en dividir el CGI en dos.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor kidd » 2007-07-28 10:47 @491

Hola,

Se me ocurren dos soluciones:

1. De entrada cargas toda la información pero aquella extra la mantienes oculta, entonces cuando ellos cliquean en Más Información realmente estarías llamando a un JavaScript que simplemente mostraría la información oculta. Para más información de esto checa el siguiente link:
http://support.internetconnection.net/C ... Hide.shtml

2. Usando AJAX, cuando el usuario cliquea en el botón de Más Información haces un request con JavaScript y despliegas la información devuelta, aquí en el sitio hay un tutorial acerca de Perl y AJAX:
http://perlenespanol.com/tutoriales/cgi ... _ajax.html


Saludos
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

Notapor digitallxd » 2007-07-28 21:56 @955

Muchas gracias a los dos. Creo que en este caso, lo segundo es lo que buscaba, porque esa información es una que ya dispongo, son 3 datos cutres.

Aunque la primera opción también me sirve para cargar datos que también me interesa saber (la ejecución de un rsh o algo).

Otra pregunta que se me ocurre:

¿Hay alguna manera de hacer, que mientras el Perl no haya escrito el final de la página me muestre una imagen de loading? Quizás no me haya explicado con claridad:

quiero que al clicar en el link que abre la pagina, lo primero que haya es mostrarme un loading... pero que al llegar al final del Perl se escriba lo otro.
digitallxd
Perlero nuevo
Perlero nuevo
 
Mensajes: 17
Registrado: 2007-07-12 06:40 @319

Notapor kidd » 2007-07-29 10:50 @493

Recuerda que hay una diferencia entre server-side(lado del servidor) y client-side(lado del cliente).

Todo lo que has puesto aquí son realmente funciones que deben de ejecutarse del lado del cliente, para lo que deseas también te recomiendo usar JavaScript:
http://javascript.internet.com/css/pre- ... ssage.html
http://www.soft32.com/download_14242.html

Saludos
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México


Volver a Básico

¿Quién está conectado?

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