Hallo,
Ich habe folgendes Problem:
Per Formular und Perl mache ich einen FileUpload. Nun ist es so, dass, wenn ich eine Datei von Windows hochlade der ganze Pfad als Dateinname angegeben wird, also z.B. "C:\Verzeichnis\bild.jpg" anstatt nur "bild.jpg". Auf einem Mac funktionierts aber.
Weiss jemand Rat?
Ciao & Danke, sprain
Hier noch der Code, wenns hilft :-)
Im HTML:
********
<form action="../../cgi-bin/facelifting/facelifting.cgi" method="post" enctype="multipart/form-data">
[... andere Formularteile ...]
<input type="file" name="file1" class="button">
[... andere Formularteile ...]
</form>
im Perl-Skript:
***************
#************************************************
$fname = $file1;
upload();
sub upload{
$fname =~ s/ /\_/gi;
$fname =~ s/ä/\ae/gi;
$fname =~ s/ö/\oe/gi;
$fname =~ s/ü/\ue/gi;
$fname =~ s/Ä/\Ae/gi;
$fname =~ s/Ö/\Oe/gi;
$fname =~ s/Ü/\Ue/gi;
open(DAT, ">$SAVE_DIRECTORY/$fname") || die 'Error processing file: ',$!;
Dateien in den Binaer-Modus schalten
binmode $file;
binmode DAT;
my $data;
while(read $file,$data,1024) {
print DAT $data;
}
close DAT;
}