in reply to CGI script problem .. trying to upload files

Firstly, your error message:

From the CGI docs:

To be safe, use the upload() function (new in version 2.47). When cal +led with the name of an upload field, upload() returns a filehandle, +or undef if the parameter is not a valid file- handle.

You probably have an old version of the CGI module which does not support the upload function.

If upgrading is not possible, there is an alternative method which is also described in the docs. However, there are several other problems with your code. Here is a short list of just the ones I can see (I'm sure other Monks will point out more)

I'd strongly recommend you work your way through a few CGI tutorials to learn some more. A couple of good ones:

Hope this helps,
Darren :)