I agree with choroba, your issue is not a Perl one. I would add a value to each of your check boxes and use the file name, this way when you click on a check box, the file name will be the returned value. If you use a unique name for each check box then the files will be returned as individual parameters. If you use the same name then the file names will be returned using a single parameter. Use CGI.pm to sort out the parameters. If you go the same name route, CGI.pm will return all of the filenames in a single array....