sub upload_file { my ($hashref) = @_; my $file; my $name; my $buffer; my $savefile; my %filehash = %$hashref; my $uploaddir = "/home/Michaela/public_html/uploadfiles/"; my $success_count = 0; my @empty_files = (); my @uploaded_files = (); while (($name, $file) = each (%filehash)) { $name =~ s/\W|\s//gi; #Sonderzeichen rauswerfen $savefile = $uploaddir . $name; open(OUTFILE, ">$savefile.$$") or print "Error: Can't create file $savefile: $!"; binmode $savefile; while(read($file, $buffer, 1024)) { print OUTFILE $buffer; } close(OUTFILE); check_filesize($savefile.$$); $success_count++; push(@uploaded_files, $file); } if (@empty_files) { $message2 = "Nicht hochgeladen: @empty_files"; } if ($error) { $message = $q->strong($error); } elsif (!$error) { $message = "$success_count Datei(en) erfolgreich hochgeladen: @uploaded_files"; } } ######################################################### sub check_filesize { my ($file_to_check) = @_; my $filesize = 0; my @file_info; my $filesize; @file_info = stat($file_to_check); $filesize = $file_info[7]; if ($filesize == 0) { chdir("/home/Michaela/public_html/uploadfiles/"); #braucht man das überhaupt? unlink($file_to_check) or print "Could not delete $file_to_check: $!"; } else { } }