Hallo!
Ich habe ein CGI-File geschrieben und unter Omnihttpd auch getestet - es lief alles soweit ganz gut. Nun stelle ich das ganze in das Netz - der Pfad ist freigeschaltet und der chkmod ist auf 755 - und das ganze läuft nicht mehr. Vielleicht könnt ihr mir helfen? Hier die Auszüge aus dem Scipt. Es soll Formulardaten auslesen und wieder anzeigen (zur Überprüfung) (findet sich alles unter www.schustek.de/RSchustek/ ). Hier also das Script:
#!/usr/sbin/perl
read(STDIN, $Daten, $ENV{'CONTENT_LENGTH'});
print "Content-type: text/html\n\n";
print "<html><head><title>Bestätigung</title>\n";
print "<script language=JavaScript>\n";
print "function SendData()\n";
print "{\n";
print "window.location.href = 'http://www.schustek.de/RSchustek/cgi-bin/user.pl'\n";
print "}\n";
print "</script>\n";
... hier folgen das einige Style-Sheeds ...
open(DATENDAT, ">http://www.schustek.de/RSchustek/daten.dat") die "Datendatei nicht gefunden\n";
print "<form name=Bestaetigung action='http://www.schustek/RSchustek/cgi-bin/user.pl' method=post>\n";
print "<fieldset align=center><br>\n";
print "<table cellpadding=5>\n";
@Formularfelder = split(/&/, $Daten); #Felder einlesen
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{$name} = $name;
$Formular{$value} = $value;
print "<tr valign=top><td width=10%>$Formular{$name}:</td><td width=5%></td><td width=10%><input readonly type=text size=30 name=$Formular{$name} value=$Formular{$value}></td></tr>\n";
print DATENDAT "$Formular{$name}: $Formular{$value};\n";
}
close(DATENDAT);
print "<br>\n";
print "</table>\n";
print "</form>\n";
print "</fieldset><br>\n";
... hier werden dann die Buttons definiert und alles zugemacht ...
Wie gesagt, beim Testen lief es und auch der Perl-Interpreter zeigt mir keinen Fehler an. Vielleicht wißt Ihr ja was. Danke schon einmal!
René