Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

2Re: View The HTML ???

by jeffa (Bishop)
on Aug 26, 2003 at 13:25 UTC ( [id://286702]=note: print w/replies, xml ) Need Help??


in reply to Re: View The HTML ???
in thread View The HTML ???

You really should look into Templating Solutions. Here are two for your amusement:
  1. Template:
    #!/usr/bin/perl -T use strict; use warnings; use CGI; use LWP::Simple; use Template; my $cgi = CGI->new; print $cgi->header; my $source; if ($cgi->param('fetch')) { $source = LWP::Simple::get($cgi->param('url')); } my $template = Template->new({ INCLUDE_PATH => '/usr/local/tt2/templates' }); $template->process(\*DATA, {cgi => $cgi, source => $source}); __DATA__ [% WRAPPER html/page html.head.title = 'view source' %] <form method="POST"> Enter URL: [% cgi.textfield('url') %] <p>[% cgi.submit('fetch') %]</p> </form> [% IF source %] <hr/> <pre>[% FILTER html %][% source %][% END %]</pre> <hr/> [% END %] [% END %]
  2. HTML::Template:
    #!/usr/bin/perl -T use strict; use warnings; use CGI; use LWP::Simple; use HTML::Template; my $cgi = CGI->new; my $template = HTML::Template->new( filehandle => \*DATA, associate => $cgi, ); if ($cgi->param('fetch')) { $template->param(source => LWP::Simple::get($cgi->param('url'))); } print $cgi->header, $template->output; __DATA__ <html> <head> <title>view source</title> </head> <body> <form method="POST"> Enter URL: <input type="text" name="url"/> <p><input type="submit" name="fetch" value="fetch"/></p> </form> <tmpl_if source> <hr/> <pre><tmpl_var name="source" escape="HTML"></pre> <hr/> </tmpl_if> </body> </html>
Feel free to ask questions about these modules, they are designed to make your life easier - but you don't appreciate that up front. ;)

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others examining the Monastery: (2)
As of 2024-06-14 01:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.