Holla,
sieht hier bei dem Upload Script jemand auf anhieb den Fehler? Er legt zwar ne Datei an (test.gif ist hier als Konstante angegeben, ist auch gewollt so) aber sie ist 0 Byte groß.
#!/usr/bin/perl
use CGI qw/:standard/;
$q = new CGI;
$filename = $q-\>param('bild\_datei');
open(OUTFILE, "\>test.gif" || print"Fehler);
binmode OUTFILE;
while ($bytesread=read($filename,$buffer,1024))
{print OUTFILE $buffer; }
close (OUTFILE);
Der Form Tag im HTML:
Wäre Prima wenns dazu ne Lösung gibt.
Freundlichst,
der Daniel.
sieht hier bei dem Upload Script jemand auf anhieb den Fehler?
Er legt zwar ne Datei an (test.gif ist hier als Konstante
angegeben, ist auch gewollt so) aber sie ist 0 Byte groß.
#!/usr/bin/perl
use CGI qw/:standard/;
$q = new CGI;
$filename = $q->param(‚bild_datei‘);
besser so …
falls Du CGI.pm vor Version 2.47 nutzt (siehe auch unten)
my $filename = Xupload($q,‚bild_datei‘);
sonst
my $filename = $q->upload(‚bild_datei‘);
eigentlich ist filename ein Filehandle, deshalb auch diese Konstruktion
open(OUTFILE, „>test.gif“ || print"Fehler);
besser wg. Fehler in Klammerung etc.:
open(OUTFILE, „>test.gif“) || print „Fehler $!“;
binmode OUTFILE;
while ($bytesread=read($filename,$buffer,1024))
{print OUTFILE $buffer; }
close (OUTFILE);
folgende sub noch einfügen, falls Du CGI.pm vor Version 2.47 nutzt (aus CGI.pm ab Version 2.47)
sub Xupload {
my ($query,$param_name) = @_;
my $param = $query->param($param_name);
return unless $param;
return unless ref($param) && fileno($param);
return $param;
}
so nicht, lieber so:
enctype="multipart/form-data" method="post"\>
So sollte es nun funktionieren. Eventuelle Verbesserungen dazu erfährst Du wie immer aus perldoc CGI.pm 
Klaus
Alles klar !
Hallo Klaus,
vielen Dank, allein von GET auf POST zu stellen war erfolgreich gewesen *freu* Da kann ich natürlich lang suchen wo im Script der Fehler ist…
Viele Grüße,
vom Daniel.