Getting CGI style parameters

How to make a CGI object

    $query = new CGI;

Fetching A List Of Keywords From The Query

    @keywords = $query->keywords
If the script was invoked as the result of an <ISINDEX> search, the parsed keywords can be obtained with the keywords() method. This method will return the keywords as a perl array.
 

Fetching The Names Of All The Parameters Passed To Your Script

    @names = $query->param
If the script was invoked with a parameter list (e.g. name1=value1&name2=value2&name3=value3"), the param() method will return the parameter names as a list. For backwards compatability, this method will work even if the script was invoked as an <ISINDEX> script: in this case there will be a single parameter name returned named  keywords'.
 

Fetching The Value(s) Of A Named Parameter

      @values = $query->param('foo');
             -or-
       $value = $query->param('foo');

Pass the param() method a single argument to fetch the value of the named parameter. If the parameter is multivalued (e.g. from multiple selections in a scrolling list), you can ask to receive an array. Otherwise the method will return a single value.
 

Saving the State to a File

   $query->save(FILEHANDLE)
This writes the current query out to the file handle of your choice. The file handle must already be open and be writable, but other than that it can point to a file, a socket, a pipe, or whatever. The contents of the form are written out as TAG=VALUE pairs, which can be reloaded with the new() method at some later time. You can write out multiple queries to the same file and later read them into query objects one by one.  If FILEHANDLE is STDOUT then it may print to the screen (though where STDOUT points is not always obvious).