There are literally dozens of modules for such things. For basic validation, Data::FormValidator seems to be the canonical choice. It takes in a hash of values from the CGI app, and compares it to a pre-written data structure that represents your filters, etc. Set up the array with all the parameter names once in your code, and then you can represent them in the filtering data structure. Using CGI, you could even write a snippit to put all the incoming parameter name into an array with my @param_names = $query->param, and feed that to the filter validator.
WARNING: Grabbing params without checking to see if they are valid for your use could be a security risk, even with filtering the values. You're better off hard-coding them in PROD systems, esp. Internet-facing ones.
----Asim, known to some as Woodrow.