Jetzt habe ich so ein einfaches Beispiel hergenommen und doch Probleme !
Perl behauptet dass die Datei geschlossen ist, obwohl ich sie unmittelbar davor öffne.
Wo liegt da mein Denkfehler ?
$tc_datei = testdat.txt;
$tc_time = time();
if (-e "$tc_datei")
{ # Datei vorhanden
open ($tc_datei_fh, "$tc_datei");
@tc_datei_inhalt = <$tc_datei_fh>;
close ($tc_datei_fh);
if ($tc_datei_inhalt[0] < $tc_time -120) # mehr als 120 Sekunden vergangen ?
{ # ja - Aktuelle Zeit eintragen
open ($tc_datei_fh, ">$tc_datei");
print $tc_datei_fh $tc_time;
close ($tc_datei_fh);
}
else
{ # nein - Fehlermeldung
HTML_Output(@tbereits_gesendet);
exit(1);
}
}
else
{ # Datei nicht vorhanden
open ($tc_datei_fh, ">$tc_datei");
print $tc_datei_fh $tc_time; # <<< hier Fehler (line 223)
close ($tc_datei_fh);
}
Fehlermeldung im LOG:
print() on closed filehandle $tc_datei_fh at C:/apachefriends/xampp/htdocs/cgi-bin/rtest.pl line 223.