I had to think about that one for a bit.
Every so often a '$q variable' needs to be assigned to a scalar variable because it would not interpolate

my $foo = $dbh->selectrow_array("SELECT cola FROM table WHERE id=$q->p +aram('id')"); ## This does not work. ## I could do something similar to this to solve the problem. my $cgi_vars{id} = $q->param('id'); my $foo = $dbh->selectrow_array("SELECT cola FROM tablet WHERE id=$cgi +_vars{id}");

This happens fairly frequently. So rather than assigning each variable as needed, I simply put all the cgi variables into a hash at the cost of a little performance.

I could put only the altered variables back in the $q object but this one liner, again at the expense of performace, seemed like an easy way to do it.

foreach (keys %cgi_vars) { $q->param($_ => $cgi_vars{$_}); }

This is replaced with 'associate => $q', which is the reason for all this in the first place.

$template->param( templatefoo => $q->param( 'foo' ), templatebar => $q->param( 'bar' ) );

In reply to Re^2: Using associate with HTML::Template by nedals
in thread Using associate with HTML::Template by nedals

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.