Adam Jimerson wrote:
I am working on a registration page and there for want it to show the
user errors it has found with their input. I have two subroutines in
my code, the first one prints out the form, also takes an array with
error descriptions that is passed by the other subroutine. The other
subroutine takes the user input and verifies it, any errors that it
finds it pushes into an array called @errors and passes that back to
the first subroutine. The problem is it doesn't work right when I
run it from the command line this is what I get:
vend...@seserver:~/public_html/AmeriVista> perl -cT register.cgi
[Sun Dec 6 14:12:12 2009] register.cgi: Illegal character in
prototype for main::form_verify : @user at register.cgi line 43.
Line 43 is:
sub form_verify (@user) {
The error is because (@user) is not a valid prototype. Just change that to:
sub form_verify {
[Sun Dec 6 14:12:12 2009] register.cgi: Scalar found where operator
expected at register.cgi line 93, near "$user"
[Sun Dec 6 14:12:12 2009] register.cgi: (Missing semicolon on
previous line?)
You get this message because line 91 does not end with a semicolon like
it is supposed to.
eval {
my $GoodMail = Email::Valid->address( -address => "$user[5]",
-mxcheck => 1);
return;
}
Should be:
eval {
my $GoodMail = Email::Valid->address( -address => "$user[5]",
-mxcheck => 1);
return;
};
[Sun Dec 6 14:12:12 2009] register.cgi: main::form_verify() called
too early to check prototype at register.cgi line 36.
You get this message because you are using a subroutine with a prototype
before you declare that subroutine and prototype. Just remove the
invalid prototype. This is the same prototype that is giving you
problems on line 43.
John
--
The programmer is fighting against the two most
destructive forces in the universe: entropy and
human stupidity. -- Damian Conway
--
To unsubscribe, e-mail: beginners-cgi-unsubscr...@perl.org
For additional commands, e-mail: beginners-cgi-h...@perl.org
http://learn.perl.org/