if ($checks{'data'} =~ /([^$checks{'regex'}])/) {
bail_out("Bad input.");
}
####
if (defined $checks{'value'}) {
if (ref $checks{'value'} eq 'Regexp') {
bail_out("Bad input.")
unless ($checks{'data'} =~ $checks{'value'});
} else {
bail_out("Bad input.")
unless ($checks{'data'} eq $checks{'value'});
}
}
####
$email_address = sanitize(
data => param('email'),
field => 'Email address',
obligatory => 1,
min => 9,
value => qr/^[a-zA-Z0-9\.]+\@[a-zA-Z0-9\.]+$/,
);
$color = sanitize(
data => param('color'),
field => 'Color',
obligatory => 1,
min => 3,
max => 4,
value => qr/^(?:red|green|blue)$/,
);
####
$username = sanitize(
data => param('username'),
field => 'Username',
obligatory => 1,
min => 8,
max => 8,
value => qr/^[%;&()#\w ]+$/,
);
####
$autosave = sanitize(
data => param('autosave'),
field => 'Autosave',
obligatory => 0,
max => 2,
value => 'on', # not a regular expression; $checks{'data'} must eq "on"
);