Piece of cake! You simply pass another array reference of hash references, just like $returnArray. But it looks like you have a problem with the parameter 'DisplayContent' - it is inside the TMPL_LOOP, so you have to include it inside $returnArray. Here is a semi-rewrite with some hard coded data (for ease of demonstration). You will need to rewrite this to retrieve the select data from your database.
use strict; use HTML::Template; my $data = do {local $/; <DATA>}; my $template = HTML::Template->new( scalarref => \$data, ); my $returnArray = [ { node_date => 'some date', node_author => 'some author', DisplayContent => 'DisplayContent', node_title => 'some title', node_content => 'some content', action_name => 'some_action', select_name => 'Type', options => [ {opt => 'Audit'}, {opt => 'New'}, {opt => 'Update'}, ], }, { node_date => 'some other date', node_author => 'some other author', DisplayContent => 'DisplayContent', node_title => 'some other title', node_content => 'some other content', action_name => 'some_other_action', select_name => 'Type', options => [ {opt => 'Audit'}, {opt => 'New'}, {opt => 'Update'}, ], }, ]; $template->param( NEWBODY => $returnArray ); print $template->output; __DATA__ <TMPL_LOOP NAME=NEWBODY> <P CLASS="std-title"><STRONG>Date</STRONG>: <TMPL_VAR NAME=node_date>< +BR> STRONG>By</STRONG>: <TMPL_VAR NAME=node_author> <P> <TMPL_VAR NAME=DisplayContent> <FORM ACTION="modify.pl" METHOD="POST"> <TABLE BORDER=0 CELLSPACING=1 CELLPADDING=1> <TR><TD>Title</TD> <TD><INPUT TYPE="TEXT" SIZE=100 NAME=node_title value="<TMPL_VAR NAME= +node_title>"></TD> </TR> <TR> <TD COLSPAN=2> <TEXTAREA COLS=100 ROWS=20 NAME=node_content><TMPL_VAR NAME=node_conte +nt></TEXTAREA> </TD> </TR> <TR><TD><INPUT TYPE="SUBMIT" NAME=action_name VALUE="<TMPL_VAR NAME=ac +tion_name>"></TD></TR> <TD><INPUT TYPE="RESET" VALUE="Reset"></TD> </TR> </TABLE> <SELECT NAME="<TMPL_VAR NAME=select_name>"> <TMPL_LOOP NAME="options"> <OPTION><TMPL_VAR NAME="opt"></OPTION> </TMPL_LOOP> </SELECT> </FORM> </TMPL_LOOP>
UPDATE:
Also, you should go ahead and get in the habit of using lower case for HTML tags. This is the new standard, and it also helps to differentiate between the HTML::Template tags, should you choose to keep the upper caps. These days i find myself just using lower case for them all and dropping the NAME parameter like so:
<html> <body> <tmpl_var foo> <tmpl_loop bar> <tmpl_var baz> <tmpl_var qux> </tmpl_loop> </body> </html>

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)

In reply to (jeffa) Re: TMPL_LOOP within a TMPL_LOOP by jeffa
in thread TMPL_LOOP within a TMPL_LOOP by shockme

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.