in reply to Not my first program, but the first I'll share...

Other monks have mentioned about error handling when the file to view is not found, so I will not say it again. Just a few comments on your code -

my $request=$ENV{'QUERY_STRING'}; $request=~/([-\w_]+\.($ext))/g; my $file=$1;
can be written in one line as follows:
my ($file) = $ENV{'QUERY_STRING'} =~ /([-\w_]+\.($ext))/g;
And also the in code -
foreach(@code){ $_=~s/</&lt;/g; $_=~s/>/&gt;/g; }
You can drop the $_ =~ part as it is not necessary (to save a few keystrokes)
foreach(@code){ s/</&lt;/g; s/>/&gt;/g; }
If you want to improve your Perl programming skills, you should learn to use CGI and HTML::Template as these powerful modules can make CGI programming really easy.

Suggestion: Why don't you go off and modify your script to use CGI, and then post your new code here as part of a learning experience?

Replies are listed 'Best First'.
Re: Re: Not my first program, but the first I'll share...
by pekkhum (Sexton) on Oct 28, 2003 at 00:48 UTC
    Thanks for those suggestions. I hadn't thought to store the search direct to the variable. I also hadn't realized the statement of the default variable was somewhat redundant.