Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Web » Formulario en CGI Responder al tema
Nuevo tema


Página 1 de 1  [ 5 mensajes ] 
 
Nota Jue Abr 22, 2010 1:06 pm

Perlero Senior
Registrado: Dom Mar 01, 2009 6:39 pm
Mensajes: 316
Formulario en CGI
Hola a todos.

Quiero hacer un formulario totalmente en CGI, o sea, que todo sea en un mismo archivo y no poner archivo HTML externos.

¿Alguien conoce alguna manera?

PD: también me gustaría saber dónde encuentro un manual para usar un CGI en vez de archivos externos html.


Nota Jue Abr 22, 2010 2:38 pm

Perlero Nuevo
Registrado: Mié Abr 11, 2007 8:37 pm
Mensajes: 11
Re: Formulario en CGI
CGI.pm es tu amigo, http://perldoc.perl.org/CGI.html

Aunque en estos días, es mejor usar alguna sistema de plantillas como Template Toolkit, HTML-Template y usar Perl para pasar información a ellas.

Saludos.


Nota Jue Abr 22, 2010 3:24 pm
Avatar de Usuario
Administrador
Registrado: Dom Jul 24, 2005 6:12 pm
Ubicación: Valladolid, España
Mensajes: 9492
Re: Formulario en CGI
Mira la sinopsis del módulo CGI, donde hay un ejemplo de cómo crear información HTML a partir de funciones del módulo.

Para lo del formulario... enlazas el formulario desde otra página. Al principio del programa compruebas el valor de los parámetros que el usuario te haya pasado (con params(), por ejemplo). En la primera invocación, no habrá nada, así que sabrás que tienes que pintar el formulario vacío. Pero si hay parámetros, es que el usuario ha recargado la página o ha pulsado el botón de envío. Esto último también lo compruebas mirando el param() correspondiente, y actúas según el caso.

Mira mi CGI mínimo, donde puedes ver cómo se accede a los parámetros.

_________________
JF^D Perl programming


Nota Sab Abr 24, 2010 1:02 am
Avatar de Usuario
Vive para Perl en Español
Registrado: Jue Jun 23, 2005 7:02 pm
Ubicación: Colombia
Mensajes: 535
Re: Formulario en CGI
Doddy escribió:
Hola a todos.

Quiero hacer un formulario totalmente en CGI, o sea, que todo sea en un mismo archivo y no poner archivo HTML externos.

¿Alguien conoce alguna manera?

PD: también me gustaría saber dónde encuentro un manual para usar un CGI en vez de archivos externos html.


Pues FormBuilder te ayuda con eso fácilmente. Ejemplo de formulario:

Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2.  
  3. use CGI::FormBuilder;
  4.  
  5. @fields = qw(first_name last_name email phone);
  6.  
  7. $form = CGI::FormBuilder->new(
  8.              fields => \@fields,
  9.         );
  10.  
  11. if ($form->submitted && $form->validate) {
  12.     # you would write code here to act on the form data
  13.     $fname = $form->field('first_name');
  14.     $lname = $form->field('last_name');
  15.  
  16.     print $form->confirm(header => 1);
  17. } else {
  18.     print $form->render(header => 1);
  19. }


Este te genera todo el HTML solo,
http://www.formbuilder.org/tutor/index.pl?c=1&s=2

_________________
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org


Nota Jue May 13, 2010 11:11 am
Avatar de Usuario
Perlero Nuevo
Registrado: Lun May 03, 2010 7:42 am
Ubicación: Girona
Mensajes: 55
Re: Formulario en CGI
¿Alguien sabe cómo hacer para que cuando apretemos el botón de mandar el formulario ejecute una función de Perl?
(usando CGI, no FormBuilder)
De momento lo he echo así y funciona, pero no se si es la mejor manera:

if (param('enviar')) #enviar es el nombre del botón de envio
{
#Comprobación de los campos rellenados;
}


Gracias de antemano.


Responder al tema  [ 5 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO