sergej: Upload File mit post-Methode

Beitrag lesen

Hollo Freunde,

Bin am Verzweifeln, finde einfach den Fehler nicht!
Hab schon sämtliche upload scripts ausprobiert und durchexperementiert.
Die Ausgabe funktioniert wunderbar, doch die Eingabe nicht!
methode=post, aber diese überträgt die Daten nicht?????
und das <INPUT NAME="act" TYPE="hidden" VALUE=1> wird auch nicht übertragen????
Es gibt auch keine Fehlermeldungen!
Wie kann ich Fehlermeldungen implementieren, dass ich dann auch nachvolziehen kann an was es liegt?

Rechte vom Verzeichnis wo die Doc-files gespeichert werden: 777
Rechte vom upload.pl: 755

upload.pl (abgespekt und angepasst an SELFHTML upload-beispiel)
-----------------------------------------------------
#!/usr/bin/perl -w
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);

my $cgi  = new CGI;
my $file  = $cgi->param('tfile');
my $act  = $cgi->param('act');

my $Verzeichnis = "../../files/doc/";
opendir(DIR, $Verzeichnis) || die "$Verzeichnis: $!";
my @Eintraege = readdir(DIR);
closedir(DIR);

#**************************************************************
#   MAIN
#**************************************************************
print "Content-type: text/html\n\n";
print "<html><body  style="border: 1px solid black; margin:20px;font-family:Verdana;font-size:11px;background-color:#DFD; color:#000000;" >\n";

if($act){ EINGABE(); } # siehe <input->hidden->value=1>
else{   AUSGABE(); }

#**************************************************************
#   Ausgabe
#**************************************************************

sub AUSGABE
{
 print "<table align=center>\n<tr><td>\n";
 foreach(@Eintraege) {
   if($_ =~ /.+.doc/) {
  print "<a href="".$Verzeichnis."$_" align="center">$_</a><br>\n";}
 }
 print "</td></tr></table>\n<a href="javascript:history.back()">zurück</a>\n</body></html>\n";

print <<"ENDE";
 <FORM method=POST ACTION="upload.pl" enctype="multipart/form-data" NAME="upload">
         <b class="fun">Doc-datei uploaden: </b><br>
  <INPUT NAME="act" TYPE="hidden" VALUE="1">
  <input type="file" name="tfile" accept="text/*" maxlength="2097152" SIZE="75">
  <br><INPUT TYPE="submit" VALUE="uploaden"><br>
  </FORM>
  <br>
  </body></html>
ENDE
}

#**************************************************************
#   Eingabe
#**************************************************************
sub EINGABE
{

my $fname = $file;
 $fname =~ s/.*\//g; # -> Lösche alles vor "" -> E:\desktop\text.txt -> text.txt
 print "$file-$act-$fname<br>"; # zur kontrolle

open DAT,">".$Verzeichnis.$fname , or die 'Error processing file: ',$!;
 binmode $file;
 binmode DAT;
 while(read($file,my $data,1024)) {
   print DAT $data;
 }
 close DAT;
 print "<p>Die Datei $fname wurde erfolgreich auf dem Server gespeichert.</p>\n";
 print "</body></html>\n";
}
-----------------------------------------------------

Danke für jede Hilfe,
Gruß Sergej