my $op = $query->param('option') || 'Login'; if ($op !~ /^[a-z0-9_]*$/i) { $op="NotAllowed"; } eval "require $op"; die "Couldn't find Class $op : ".$@."\n" if $@; $op->perform(...); #### my $mods = {showOverview=>"showOverview", Login => "Login"} my $op = $mods->{$query->param('option')}; eval "require $op"; ...