Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

convert HTML to CGI $query->htmltag(foo) style

by Anonymous Monk
on Aug 07, 2004 at 16:28 UTC ( [id://380925]=perlquestion: print w/replies, xml ) Need Help??

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

Is there an easy way to convert HTML to perl? I have HTML pages already, and instead of recoding them by hand to be like:

$query->header();
print $query->start_multipart_form($method,$action,$encoding);
...
...
and so forth.

Thanks everyone. Cheers to the perlmonks, y'all have been beyond helpful.

Replies are listed 'Best First'.
Re: convert HTML to CGI $query->htmltag(foo) style
by Zaxo (Archbishop) on Aug 07, 2004 at 17:33 UTC

    You might want to consider converting the HTML to template form instead. TT2 and HTML::Template are two popular template engines to drive them.

    The advantage is in the separation of code from content. That reduces the crosstalk needed between page designers and cgi coders (even if they are the same person).

    After Compline,
    Zaxo

      I agree with Zaxo, separating code from content is a good thing.

      My wife has even noticed a decrease in how much I talk to myself since I have started using Template.

•Re: convert HTML to CGI $query->htmltag(foo) style
by merlyn (Sage) on Aug 07, 2004 at 16:57 UTC
Re: convert HTML to CGI $query->htmltag(foo) style
by jcpunk (Friar) on Aug 07, 2004 at 19:27 UTC
    For the extreemly lazy

    You could use a HERE statement.

    $html = <<HERE; THIS IS THE HTML STUFFZ HERE print $html;
    I would not recomend doing this for pages you plan to update frequently or if you endup with more lines of html than of perl in that program.
    If you are thinking about the HERE statement route I would suggest reading the html in from a file, that way the perl is clearer and cleaner.

    jcpunk
    all code is tested, and doesn't work so there :p (varient on common PM sig for my own ammusment)
Re: convert HTML to CGI $query->htmltag(foo) style
by strat (Canon) on Aug 08, 2004 at 09:23 UTC

    Well, another pro for a templating system (or the like) is that you can easily split up your pages into several parts where some of them can be used from all pages, e.g. if you use the header-template from all page templates, it is very easy to do global changes there and you only need to change one file

    E.g. most parts of my homepage are static html and the common parts (header, navigation, footer) are included with SSI (=Server Side Includes). But since I've got some cgi-Scripts as well (guestbook, calendars, ...), I can use these SSI files also with HTML::Template (and maybe other templating systems), and since you can use html-Template variables in a HTML comment style, I can mix both codes...

    ... <html> <head> <title>My Page</title> </head> <body> <!-- TMPL_IF NAME=RUN_FROM_CGI --> <!-- TMPL_INCLUDE NAME="menu.html" --> <!-- TMPL_ELSE --> <!--#include virtual="menu.shtml" --> <!-- /TMPL_IF -->

    or the like, and use the template from SSI with include virtual and from HTML-Template with <!-- TMPL_INCLUDE NAME= ...>

    Best regards,
    perl -e "s>>*F>e=>y)\*martinF)stronat)=>print,print v8.8.8.32.11.32"

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2024-03-29 08:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found