in reply to Re^2: Template::Simple Help!
in thread Template::Simple Help!

After getting this to work, I realize that the documentation is incomplete.

Here are the things you need to fix, to get this to work:

The 'compile' automatically adds the ".tmpl' suffix, and searches for a file with that name in the 'search_dirs'.

Here are the last few lines of the code:

#$tmpl->add_templates( { demo => 'templ.tmpl' } ) ; # Commented OUT $tmpl->compile( 'templ'); #( was 'demo' ) ; my $rendered = $tmpl->render( 'templ', $vars ) ; print $$rendered;
There are a few other minor issue's - but they will become obvious once your template starts rendering. Happy templating !.

            "Battle not with trolls, lest ye become a troll; and if you gaze into the Internet, the Internet gazes also into you."
        -Friedrich Nietzsche: A Dynamic Translation

Replies are listed 'Best First'.
Re^4: Template::Simple Help!
by Anonymous Monk on Dec 23, 2011 at 20:58 UTC
    At least I could see something been printed to the screen, still having issues with the 'header' and 'footer' that is printing HASH(0x1e1b0cc) to the screen. But thanks for looking into this!
      You can fix those by replacing the bottom part of your template with:
      [% START header %] ==== Written By [% author %] on [% date %] ==== [%END header%] [%START row%] [%first%] - [%second%] [%END row%] [% START footer%] *-*- This page was last modified on [% modified %]. Hope it still wo +rks ! *-* [%END footer %]
      Notice the use of "START" and "END" on %header and %footer - this is because these entities are not simple scalars - they are hash refs that need to be expanded, and have their keys referenced.

                  "Battle not with trolls, lest ye become a troll; and if you gaze into the Internet, the Internet gazes also into you."
              -Friedrich Nietzsche: A Dynamic Translation

        Thank you for you help, I added a table here to add to this, since it could be of some help for someone looking for something extra on this:
        ... my $table = qq|<table width="300" border="1" bgcolor="#1A1A1A" cellpad +ding="0" cellspacing="0">|; for (my $i=0;$i<4;$i++) { $table .= qq| <tr> <td align="center">&nbsp; <input type="text" name="acc_$i" style="wid +th: 245px;" maxlength="300" /> </td> </tr>|; } $table.="</table>"; $vars->{'account_names'} = $table; ... # add this to the template file: [% account_names %]
        Thanks!!!