|
发表于 2004-8-1 02:00:22
|
显示全部楼层
試一下
upload.html
<FORM ACTION="upload.cgi" METHOD="OST" ENCTYPE="multipart/form-data">
<>lease choose a file to upload:
<INPUT TYPE="FILE" NAME="file">
<INPUT TYPE="SUBMIT">
</FORM
upload.cgi
#!/usr/bin/perl -wT
use strict;
use CGI ':standard';
use CGI::Carp 'fatalsToBrowser';
$|++;
my $file = upload('file');
my ($name) = param('file') =~ m|([^/:\\]+)$|;
my $dir = 'D:/Web';
my $type = uploadInfo($file)->{'Content-Type'};
open(OUT,"> $dir/$name");
binmode OUT;
my ($size,$byte,$buffer);
while ( $byte = read($file,$buffer,1024) ) {
print OUT $buffer;
$size += $byte;
}
close OUT;
close $file;
my $total_size = &size_format($size);
sub size_format {
my $size = $_[0];
if ( $size < 1024 ) { return('1K') }
elsif ( $size < 1048576 ) { return(int($size/1024 + .5) . 'K') }
else { return( (int(10 * $size/1048576 + .5) / 10) . 'MB') }
}
print header(-charset=>'big5'),
start_html('Upload File'),
h1('Upload File'),
"上傳檔案$total_size<br>",
"檔案?型$type",
end_html; |
|