Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Code + Results to HTML

by Anonymous Monk
on Feb 25, 2001 at 02:16 UTC ( [id://60680]=sourcecode: print w/replies, xml ) Need Help??
Category: Miscellaneous
Author/Contact Info
Description: This program reads all *.pl files in a given directory and then outputs the script followed by the results to an html file. Any suggestions for improvements, or added robustness would be much appreciated.
#!/usr/bin/perl
(@files)=<*.pl>;
foreach my $file(@files){
    my ($filestart)=$file=~/(.*?)\./;
    open INPUT, $file;
    my $source;
    while (<INPUT>){
       $source.=$_;
    }
    close INPUT;
    $program=$source;
    $source=~s/</&lt;/g;
    $source=~s/>/&gt;/g;
    open FILE, ">$filestart.html";
    *STDOUT=*FILE;
    print "<HTML><BODY bgcolor=ffffff>\n";
    print "<PRE><CODE>";
    print $source;
    print "</CODE"."></PRE>";
    print "<B>Program results:</B>";
    print "<PRE>";
    eval $program;
    print "</PRE>";
    print "</BODY></HTML>";
    close FILE;
}
Replies are listed 'Best First'.
Re: Code + Results to HTML
by dws (Chancellor) on Feb 25, 2001 at 04:27 UTC
    If you insist on filtering the source yourself, rather than using routines in CGI.pm, you'll need to add:     $source=~s/&/&amp;/g;
Re: Code + Results to HTML
by TheoPetersen (Priest) on Feb 25, 2001 at 03:48 UTC
    Since you are going to stuff the whole file into a scalar anyway, let Perl do that for you:
    my $source; { open INPUT, $file; local $/ = undef; $source = <INPUT>; close INPUT; }
    You caught the need to escape the tag characters in the code, but there are some cases that will slip through. CGI's escapeHTML function can filter the whole file at once; I'm sure there are other implementations too.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: sourcecode [id://60680]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (7)
As of 2024-03-28 11:14 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found