Usando Blocos Dinâmicos com a Classe FastTemplate (Parte 2)
Essa forma é um pouco mais complexa: a de blocos dinâmicos ANINHADOS. Às vezes tornar-se necessário a sua criação, onde teremos a existência de N arquivos: um script PHP principal, um template principal, e mais N templates ANINHADOS dentro desse principal. Apesar desse recurso, vocês verão que apenas 1 aninhado já resolve muita coisa.
Introdução
Bem, antes de começar a ler seria interessante acessar os seguinte
artigos em seqüencia:
No primeiro artigo expliquei a criação de blocos dinâmicos com a classe FastTemplate. Aquela forma de template utiliza 2 arquivos:
- Organizando projetos com a classe FastTemplate (parte 1)
- Organizando projetos com a classe FastTemplate (parte 2)
- Usando Blocos Dinâmicos com a Classe FastTemplate (Parte 1)
No primeiro artigo expliquei a criação de blocos dinâmicos com a classe FastTemplate. Aquela forma de template utiliza 2 arquivos:
- um script PHP
- um template em HTML
<table width="100%" border="0" align="center" class="fonte_tabela">
<!-- BEGIN DYNAMIC BLOCK: linhas -->
<tr>
<td width='100%' colspan='0' rowspan='0'>
<strong>{NOME}</strong><br>
{FONE}<br>
</td>
<tr>
<!-- END DYNAMIC BLOCK: linhas -->
</table>
<!-- BEGIN DYNAMIC BLOCK: linhas -->
<tr>
<td width='100%' colspan='0' rowspan='0'>
<strong>{NOME}</strong><br>
{FONE}<br>
</td>
<tr>
<!-- END DYNAMIC BLOCK: linhas -->
</table>
Dentro dos comentários HTML é definido o nome do bloco dinâmico, no caso "linhas", onde a classe irá repetir a construção da linha de acordo com o número de registros do BD.
No desenvolvimento de aplicações WEB pode se tornar necessária a criação de blocos dinâmicos aninhados. Veja o exemplo abaixo:
<table width="100%" border="0" align="center" class="fonte_tabela">
<!-- BEGIN DYNAMIC BLOCK: linhas -->
<tr>
<td width='100%' colspan='0' rowspan='0'>
<strong>{NOME}</strong><br>
{FONE}<br>
</td>
<td>
<select name="ID">
2º BLOCO DINÂMICO
2º BLOCO DINÂMICO
2º BLOCO DINÂMICO
</select>
</td>
<tr>
<!-- END DYNAMIC BLOCK: linhas -->
</table>
<!-- BEGIN DYNAMIC BLOCK: linhas -->
<tr>
<td width='100%' colspan='0' rowspan='0'>
<strong>{NOME}</strong><br>
{FONE}<br>
</td>
<td>
<select name="ID">
2º BLOCO DINÂMICO
2º BLOCO DINÂMICO
2º BLOCO DINÂMICO
</select>
</td>
<tr>
<!-- END DYNAMIC BLOCK: linhas -->
</table>
Veja que os <option> do select estão dentro do bloco dinâmico "linha". Se esse select também vier do banco de dados surge um problema: "utilizarei o código PHP na minha página que antes tinha apenas HTML? Não, pois se assim for a definição de template está perdida".