我能夠創建我的目錄,但我似乎無法將文件放在目錄中。使用Perl CGI上傳文件
#!/usr/bin/perl
use Cwd;
use CGI;
my $dir = getcwd();
print "Current Working Directory: $ dir\n";
my $photoDir = "$dir/MyPhotos";
mkdir $photoDir
or die "Cannot mkdir $photoDir: $!"
unless -d $photoDir;
my $query = new CGI;
my $filename = $query->param("Photo");
my $description = $query->param("description");
print "Current filename: $filename\n";
my ($name, $path, $extension) = fileparse ($filename, '\..*'); $filename = $name . $extension;
print $filename;
my $upload_filehandle = $query->upload("Photo");
open (UPLOADFILE, ">$photoDir/$filename")
or die "$!";
binmode UPLOADFILE;
while (<$upload_filehandle>)
{ print UPLOADFILE; }
close UPLOADFILE;
的CGI堆棧跟蹤顯示沒有錯誤,但記錄顯示沒有輸出
LOG: 5 5020-0:0:0:0:0:0:0:1%0-9: CGI output 0 bytes.
您可以包含數據::自卸車和轉儲到控制檯是什麼$ upload_filehandle,並張貼到你的問題? (你想要打開原始的「>」追加模式。) – dwerner 2012-03-19 01:05:28
恐怕我不知道如何執行'Data:Dumper',我將它作爲localhost perl cgi運行,唯一我能看到的是日誌文件有沒有辦法打印$ upload_filehandle – Warz 2012-03-19 02:28:18
http://search.cpan.org/~smueller/Data-Dumper-2.131/Dumper.pm - 它包含在新版本的perl中,它可以創造奇蹟用於調試,因爲它可以用來將複雜的數據結構打印到STOUT中 – dwerner 2012-03-19 02:33:01