Med just den koden är felet det avslutande }
Blir enklare att analyserar felet om hela blocket finns med.
Även om du stängt första filhandtaget så kan det vara idé att döpa dem med olika namn. Exempelvis FILE2 för andra öppningen så hållar man isär dem lite enklare i koden.
Sedan har du en exit; direkt efter stängningen. Ska det inte printas ut något till webbläsaren? Det verkar ju som att du först läst in något från ett formulär och då blir det naturligt att ett resultat visar sig efter programkörningen.
Det beror troligen på att $number inte har något värde.
Var hämtas informationen om hur många textfiler som skapats?
Har du alla txt-filer i en mapp så kan du räkna dessa eller så kan du låta skriptet skriva till en fil varje gång en textfil skapas. Alltså en vanlig räknare.
Räkna textfiler i en mapp kan du t.ex göra så här.
$txtDir = "MappenMedFilerna";
$number = 0;
if (-d "$txtDir") {
opendir(TEXTFILER, "$txtDir") or die "Kan inte öppna mappen: $!\n";
@txtfiler = grep { /\.txt$/i } readdir TEXTFILER;
closedir(TEXTFILER);
$number = @txtfiler;
}
Ligger skriptet i samma mapp som filerna så anges sökvägen som "."
[red.]
Om du skapar filer så kanske du eventuellt behöver ge dem skrivrättigheter också.
I så fall kan du lägga till raden
chmod (0777, "$number.txt");
efter filstängningen.