in reply to ftp uploading

The error you are getting is reported by the strict module, which traps a lot of silly mistakes. What strict wants to tell you is that the variable %in is used in your script before you have declared it with my %in;. Either you have misspelled the variable name (maybe %In ?) or you haven't initialized that variable at all.

You should either post a bigger snippet of your code (or all of your code if you can reduce the problem to below 50 lines), or at the very least, describe in a bit more detail how you fill %in and where you declare it.

For example, the following code will create an error similar to your error even though you do declare %in (but in the wrong place) :

use strict; sub read_CGI_Variables { my %in; # Win32/DOS allows forward slashes ! $in{"file1"} = "c:/uploads/myfile.tmp"; }; read_CGI_Variables(); print "Uploaded ",$in{"file1"},"\n";
perl -MHTTP::Daemon -MHTTP::Response -MLWP::Simple -e ' ; # The $d = new HTTP::Daemon and fork and getprint $d->url and exit;#spider ($c = $d->accept())->get_request(); $c->send_response( new #in the HTTP::Response(200,$_,$_,qq(Just another Perl hacker\n))); ' # web