Hi,
<form action="cgi-bin\guestbook.pl" name="questbook" target="_top" method="post" enctype="multipart/form-data">
Bei URLs ist / das Trennzeichen, nicht \
my $cgi = new CGI;
my @name = $cgi->param('name');
Mehrere Namen? Wie soll das bei Deinem Formular gehen?
my @kommentar = $cgi->param('kommentar');
Same here.
my @datei;
my @alt;
my @neu;
open(DATEI, "<neu.html");
@datei = <DATEI>;
close(DATEI);foreach(@datei)
{push(@alt,$_)};
push(@alt,@datei);
wobei Du dieses sparen könntest, wenn Du die Datei direkt in @alt einlesen würdest.
foreach(@name)
{push(@alt,$_)};
push(@alt,@name)
bzw.
push(@alt, $name), denn Du hast ja eigentlich nur einen Namen, also keinen Grund, eine Liste aufzumachen.
foreach(@kommentar)
{push(@alt,$_)};
s.o.
foreach (@alt)
{if(/^<!-- NEU -->/)
{push(@neu,$_);}
push(@alt,"<!-- NEU -->\n");};open(DATEI, "<neu.html");
Jetzt liest Du schon wieder die Datei. Der Inhalt steht doch noch in @datei
$, = "<br>";
print "@neu";
Hier gibt Dein CGI etwas auf STDOUT, also an den http-Client, aus.
Aber vorher wurde kein http-header gesendet.
Außerdem könnte @neu hier sogar leer sein.
close(DATEI);
cu,
Andreas
Der Optimist: Das Glas ist halbvoll. - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.