Hallo,
ich habe letztens schon einmal diesbezüglich ins Forum gepostet, bin leider noch nicht fündig geworden. Es geht um folgendes: Ich rufe bei submit eines Forms (einer HTML-Page) ein perl-Script auf, welches anhand der übergebenen Daten einen SQL-Request startet. Wiederhole ich den Submit einige Male mit verschiedenen eingegebenen Suchbegriffen, so haben die entsprechenden Variablen im Perl-Script irgendwann nicht mehr die Werte aus dem Form als Inhalt. Web-Server ist Apache/1.3.6 (Unix) mit mod_perl. Letztens bekam ich die Antwort, daß ich unsauber programmiert habe. Bin Perl-Anfänger und habe leider nichts verdächtiges gefunden. Deshalb anbei der Code, um den es geht. Besten dank schon einmal.
Der Aufruf des Scripts in der HTML-Page:
<form name="test" action="write.pl">
Und das zugehörige Script:
#!/usr/bin/perl
require "cgi-lib.pl";
ReadParse(); # aus CGI-LIB.PL
@Zeilen = ("");
#Seitenkopf ausgeben
print <<"EOT";
Content-type: text/html
...
EOT
if (open(INPUT, "<../files/".$in{'1'}.$in{'2'}.".txt")) {
while(<INPUT>) {
push(@Zeilen,$_);
}
close(INPUT);
}
if(open(OUTPUT,">../files/blk".$in{'1'}.$in{'2'}.".txt")==false) {
print "Es ist ein Fehler beim Speichern Ihres Eintrages aufgetreten.\n";
}
else {
print OUTPUT "<p >$in{'NAME'} (<a href=\"mailto:$in{'eMail'}\">$in{'eMail'}</a>) schrieb<br><br>\n";
print OUTPUT "$in{'Eintrag'}</p><br>\n";
for(@Zeilen) { print OUTPUT "$\_\n" }
close(OUTPUT);
print "<div align=\"center\">\n";
print "</div>\n";
}
print "</body></html>\n";