#!/usr/bin/perl

use CGI qw/:standard/; 

# Код для HTML-формы 
print "Content-Type: text/html\n\n"; 
print qq~
 <form method="post" enctype="multipart/form-data" action="file_send.pl">\n
   <input type="file" name="picture">\n
   <input type="submit" name="Submit" value="Submit">\n
 </form>
~;

#end of print form

insert_image() if (param()); 

sub insert_image { 
 # путь к директории для закачки директория 
 # должна иметь право на запись для 
 # пользователя, под которым работает веб-сервер 
 my $downpath = "tmp/"; 

 my $in=param('picture'); 

 # выделяем имя файла из параметра 
 my ($name) = $in =~ m#([^\\/:]+)$#; 

 open(OUT,">$downpath$name"); 
 binmode(OUT); 
 # читаем входной поток и пишем в файл 
 while (<$in>) { 
   print OUT $_; 
 } 
 close(OUT); 

 # выводим надпись о закачке файла <$name> 
 print "Upload file: $name"; 
}