use strict; require "Validate.pm"; use CGI qw(:standard); new CGI; my ($name, $phone, $email, $date, @errmsg, $errmsgs); $name = param('name'); &val_alpha($name, "Last Name", $errmsg[0]); $phone = param('phone'); &val_phone($phone, "Phone Number", $errmsg[1]); $email = param('email'); &val_email($email, "E-mail Address", $errmsg[2]); $date = param('date'); &val_date($date, "Birth Date", $errmsg[3]); &error_page(@errmsg); print "Errors:\n$errmsgs\n"; #handle errors sub error_page { for (@_) { if ($_) { $errmsgs .= "$_\n" } } } $template = HTML::Template->new(filename => "form.tmpl"); $template->param(errors => $errmsgs); #eventually process and write to the database __END__