@files = <../data/texts/*>;
$file = param("select") || $files[rand(@files)];
undef @isfile{@files};
exists $isfile{$file} or die;
open(IN, "../data/texts/$file") or die $!;
####
open (FILEHANDLE, MODE, FILENAME) or die $!;
####
open (IN, "<", "../data/texts/$file") or die $!;
####
#!/usr/bin/perl -wT
$ENV{PATH} = "";
# ... use statements and other code
my @files = <../data/texts/*>;
my $file = param("select") || $files[rand(@files)];
($file) = ($file =~ /^([\w.-]+)$/); # Clean filename
die "Invalid filename: $file" unless $file; # Die if empty
my %isfile;
undef @isfile{@files};
exists $isfile{$file} or die "Invalid filename: $file";
open(IN, "<", "../data/texts/$file") or die $!;