http://www.perlmonks.org?node_id=1154764


in reply to Populating a html template problem

You have to adjust your data structure AND the template:

use strict; use warnings; use Data::Dumper; use HTML::Template; my %hash = ( ABC => "john", DEF => "mike", GHI => "mary", ); my $tmpl = HTML::Template->new(scalarref => \q{ <table> <thead> <tr><TMPL_LOOP TH> <th><TMPL_VAR CELL></th></TMPL_LOOP> </tr> </thead> <tbody><TMPL_LOOP TD> <tr> <td><TMPL_VAR KEY></td> <td><TMPL_VAR VAL></td> </tr></TMPL_LOOP> </tbody> </table> }); $tmpl->param( TH => [ map { CELL => $_ }, qw( Type Value ) ], TD => [ map { KEY => $_, VAL => $hash{$_} }, keys %hash ], ); print $tmpl->output;

Output:

<table> <thead> <tr> <th>Type</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>ABC</td> <td>john</td> </tr> <tr> <td>DEF</td> <td>mike</td> </tr> <tr> <td>GHI</td> <td>mary</td> </tr> </tbody> </table>

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)