Schön guten Morgen :o)!
Ich hab mit folgendem Script ein Problem:
-------------- Anfang --------------
#!c:/apache/perl/bin/perl.exe
use CGI;
require "cgi-lib.pl"; # Version 2.17
if($ENV{'REQUEST_METHOD'} eq 'GET')
{
$Daten = $ENV{'QUERY_STRING'}
}
else
{
read(STDIN, $Daten, $ENV{'CONTENT_LENGTH'});
}
@Formularfelder = split(/&/, $Daten);
foreach $Feld (@Formularfelder)
{
($name, $value) = split(/=/, $Feld);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s/<!--(.|\n)*-->//g;
$Formular[$i] = $name;
$i = $i + 1;
$Formular[$i] = $value;
$i = $i + 1;
}
unlink("C:/apache/apache/$Formular[1].log") or die print "Location: http://$ENV{'SERVER_NAME'}/edmhilfe/login.htm\n";
print "Location: http://$ENV{'SERVER_NAME'}/edmhilfe/login.htm\n";
-------------- Ende --------------
Bei der Ausführung meldet der Apache den Fehler:
[Wed Feb 20 10:01:44 2002] [error] [client 10.0.0.34] Premature end of script headers: c:/apache/apache/cgi-bin/edmhilfe/logout.pl
[Wed Feb 20 10:01:44 2002] [error] [client 10.0.0.34] 1 at c:\apache\apache\cgi-bin\edmhilfe\logout.pl line 26.
$Formular[1] liefert den Wert "Admin" und die Datei C:/apache/apache/admin.log ist auch vorhanden UND wird auch gelöscht. Ich versteh daher ehrlich gesagt nicht ganz woher der Fehler kommt. Oder hab ich was übersehen??
Gruß, Jan