The following module was proposed for inclusion in the Module List:
modid: CGI::FormBuilder
DSLIP: RdpOa
description: Easily generate and process stateful forms
userid: NWIGER (Nathan Wiger)
chapterid: 15 (World_Wide_Web_HTML_HTTP_CGI)
communities:
Much discussion w/i organization, want to estab mail list
similar:
None really; many form modules but none do what this does
rationale:
This module stands apart from other CGI modules in that it has a
lot of intelligence builtin. You don't address form fields as
"checkbox" or "input", but rather just "field". The module takes
care of deciding what is the best rep for the data, keeping
multi-value/multi-option forms sticky for you, and rendering the
entire table for you. A whole form app can be built with nothing
more than this:
use CGI::FormBuilder;
my $form = CGI::FormBuilder->new(method => 'POST', fields =>
[qw/name email/]);
if ($form->submitted) { # update our data my $email =
$form->field('email'); my $name = $form->field('name'); # ... } else
{ print $form->render; }
You'll get human-readable tags laid out in an HTML table, complete
with a submit button and hooks for sessionid. It even generates
compliant JavaScript for form validation automatically.
This module has really taken off; Andy Wardley just sent me a huge
patch which is in 1.91 that enables Template Toolkit functionality
in addition to the HTML::Template functionality that I had already
builtin. If you need more info please email me. Thanks!
enteredby: NWIGER (Nathan Wiger)
enteredon: Wed Dec 12 17:30:20 2001 GMT
The resulting entry would be:
CGI::
::FormBuilder RdpOa Easily generate and process stateful forms NWIGER
Thanks for registering,
The Pause Team
PS: The following links are only valid for module list maintainers:
Registration form with editing capabilities:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=08200000_f6025506be740f80&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=08200000_f6025506be740f80&SUBMIT_pause99_add_mod_insertit=1