http://www.perlmonks.org?node_id=450893


in reply to Re: Filtering CGI Input
in thread Filtering CGI Input

No, it is not that simple as the following code demonstrates:
#!/usr/bin/perl use strict; my $num = "123abc"; print "valid\n" if $num > 0 && $num < 99999; exit;
This will print 'valid', even though it does not meet the OP's criteria.

Thus, if the value "123abc" is passed from a web form to a cgi script, the code you suggest will validate it. The reason for this is because when using numeric comparisons, Perl will treat any string that begins with a number as a number. This is clearly not what the OP wants.

davidj