Hallo Andrea,
In der required.txt:
»» "name", "comment"
Im cgi-File:
»» open (REQUIRED, "required.txt");
»» @required = <REQUIRED>;
»» close(REQUIRED);
Wenn Du so wie oben verfährst, steht im ersten Element von @required ($required[0]) die angegebene Textzeile, weil der Eingabeoperator <> Dateien zeilenweise in ein Array einliest. Sofern also $/ eq "\n" zutrifft, steht in jedem Element von @required eine Zeile Deiner Datei.
Wenn Du so etwas wie @required = ("name","comment"); erreichen möchtest, kannst Du auf verschieden Art und weise vorgehen:
- In der required.txt: (Auslagern von Code)
@required = ('name','comment');
1; # die Eins ist afaik hier nicht nötig, da hier eine Zuweisung stattfindet, die imho "true" ist
Im Skript: (der Code wird einfach eingebunden)
require 'required.txt';
- In der required.txt: (die Werte durch ein einfaches Trennzeichen separiert)
name,comment
Im Skript: (einlesen der ersten Textzeile und Splitten der Werte beim angegebenen Trennzeichen)
open (REQUIRED, "required.txt") die "YourFehlermeldung $!";
@required = split /,/, <REQUIRED>;
chomp $required[-1]; # Zeilenvorschub aus dem letzten Element entfernen, falls vorhanden
close(REQUIRED);
Ich hoffe das hilft Dir weiter :-) Allerdings solltes Du schon noch versuchen, den Code des Skriptes zu verstehen, damit Du auch weist, warum Deine Version nicht funktionieren konnte.
Gruß AlexBausW
P.S.: untested && TIMTOWTDI