in reply to get query string to HTML::Template

Aside from the painfully obvious:

foreach my $name ($query->param) { $template->param($name => scalar $query->param($name)); }

HTML::Template also provides:

  $template = HTML::Template->new(associate => $query, ...);

Although, since you mentioned a loop, maybe you really wanted:

  $template->param(some_loop => [ map { { name => $_, value => scalar $query->param($_) } } $query->param ] );

Maybe you should slow down and tell us what you're really trying to do.

-sam