Markus: Anweisungen ausführen, wenn Datei nicht existiert?

Beitrag lesen

open(DATEI,"<daten.dat") || &error("Datei existiert nicht: $!");

sub error
{
  print "Content-type: text/html\n\n";
  print "<html><body>";
  print $_[0];
  print "</body></html>";
}

Die Idee mit der Subroutine hatte ich auch schon, aber die meine Version funktioniert nicht. :(

Hier mal ein paar Code-Schnipsel:

#!/usr/bin/perl -w

use strict;
use CGI::Carp qw(fatalsToBrowser);
my @Daten;

open (DATEI, "<userdaten.dat") || Standarddaten();
@Daten = <DATEI>;
close(DATEI);

...

Hier werden dann die eingelesene Daten am Bildschirm ausgeben

...

Wenn userdaten.dat nicht geöffnet werden konnte,

soll eine Alternativ-Datei geöffnet werden

sub Standarddaten{

print "Content-type: text/html\n\n";
print <<"ENDE";
<html>
<head>
<title>Standardeinträge lesen</title>
</head>
<body>
Die Datei konnte nicht geöffnet werden!
<br>
Es wird nun eine Datei mit mit Standard-Einträgen verwendet!
</body>
</html>
ENDE

open (DATEI, "<standarddaten.dat") || die "Fehler beim Öffnen der Datei: $!";
@Daten = <DATEI>;
close (DATEI);
}

...

Gruß
Markus