HMTL::Template is very applicable for this. Here is a
command line script that you can play with (i'll leave
turning it into your CGI script as an exercise):
use strict;
use HTML::Template;
my $data = do {local $/; <DATA>};
my $temp = HTML::Template->new(
scalarref => \$data,
);
$temp->param(
row => [
{ 'link' => 'foo' },
{ 'link' => 'bar' },
{ 'link' => 'baz' },
{ 'link' => 'qux' },
],
);
print $temp->output;
__DATA__
<table border="1">
<tmpl_loop row>
<tr>
<td><a href="<tmpl_var link>"><tmpl_var link></a></td>
</tr>
</tmpl_loop>
</table>
I use the built-in DATA filehandle to avoid having to
use a seperate template file, just save this code as foo.pl
and run it.
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)
|