http://qs321.pair.com?node_id=150612

munchie has asked for the wisdom of the Perl Monks concerning the following question:

Hi, I wrote a script to initiate one of three blocks of code based on the query string. When I try to run the program on the web, it returns a 500 internal server error (it is CHMODed 755). For an example of what I type in: http://www.publicutilityhome.com/ssrubin/ssrubin.cgi?progid=entry The code:
#!/usr/bin/perl -w use strict; use CGI qw(:standard); my $progid = param('progid'); if ($progid == "entry") { print "Content-Type: text/html\n\n"; open FH, "entry-pool.dump" or die $!; my $SEP = "--------"; local $/ = $SEP; my $line = <FH>; while (<FH>) { $line = $_ if rand($.) < 1; } close FH; $_ = $line; s!^\s*!!; s!$SEP\s*$!!; tr!\cM!!d; my($title, $link, $excerpt) = split /\n/, $_, 3; print <<HTML; <a href="$link">$title</a><br /> $excerpt HTML } elsif ($progid == "desc") { require "desc.conf"; open (FILE, my $random_file); my @LINES=<FILE>; close(FILE); srand; print "Content-type: text/html\n\n$LINES[int rand(@LINES)]\n"; } elsif ($progid == "bush") { require "bush.conf"; open (FILE, my $random_file); my @LINES=<FILE>; close(FILE); srand; print "Content-type: text/html\n\n$LINES[int rand(@LINES)]\n"; }

> munchie, the number munchin newb
Llama: The other other white meat!
(you had to be there :-P)