Organizando projetos com a classe FastTemplate (parte 2)
Outra situação muito comum na programação com uso de templates é o uso de quantidade indefinida de variáveis. Uma vez que você busca dados a partir de uma tabela de banco de dados, não se pode prever o número de registros serão retornados ao seu script, daí surge a necessidade do uso de um template duplo, ou seja, um template para a parte estática do HTML e outro para a parte indefinida (dinâmica).
No exemplo ilustrado neste artigo, vamos definir um array com alguns elementos, já que a conexão com o banco de dados tornaria nossa leitura mais complexa e prolongada. Faremos de conta que este array foi obtido a partir de consultas ao seu banco de dados favorito, ok ?
No exemplo ilustrado neste artigo, vamos definir um array com alguns elementos, já que a conexão com o banco de dados tornaria nossa leitura mais complexa e prolongada. Faremos de conta que este array foi obtido a partir de consultas ao seu banco de dados favorito, ok ?
<!-- modeloDuplo.php --> <?php include 'class.FastTemplate.php3'; // carregar classe $model = new FastTemplate('./modelos'); // repositório de modelos $model -> define ( array ( 'pagina' => 'modeloDuplo.html', 'linhas' => 'itemModeloDuplo.html' ) ); // definimos um template para a parte estática e outro que será // processado para cada linha de um vetor $vetorFazDeConta = array ( "Fábio B. de Paula" => "fabio@vivaolinux.com.br", "Zé Menino da Lagoa" => "zemenino@vivaolinux.com.br", "Florentina de Jesus" => "florentina@vivaolinux.com.br", "Marcolino Pão-e-Vinho" => "marcolino@vivaolinux.com.br" ); reset($vetorFazDeConta); while ( list($nome,$email) = each($vetorFazDeConta) ) { $model->assign('{NOME}',$nome); // as variáveis {NOME} e {EMAIL} estarão $model->assign('{EMAIL}',$email); // definidas no template que executa uma vez // para cada linha do vetor $model->parse('{LINHAS}','.linhas'); // a variável {LINHAS} aparecerá no template estático do HTML e será substituído // pela concatenação de cada processamento sobre o handle ".linhas". Note que // existe um '.' antes do nome do handle, para dizer ao FastTemplate que este // processamento trata-se de uma concatenação } $model->assign('{TITULO}','Exemplo de modelo dinâmico do FastTemplate'); // a variável {TITULO} é estática e está no template estático $model->parse('OUTPUT','pagina'); $model->FastPrint('OUTPUT'); ?> <!-- fim -- >
cara parabens pelos artigos to começando com template agora e vou ultilizar fast no proximo projeto.
mas ainda tenho algumas duvidas de funcionabilidade como por exemplo as classes onde utilizo cgi para montar checkbox etc como ficaria isto ? da mesma forma que um banco ?
em geral seus artigos me deram um boa clareada ...
FALEU .
mas ainda tenho algumas duvidas de funcionabilidade como por exemplo as classes onde utilizo cgi para montar checkbox etc como ficaria isto ? da mesma forma que um banco ?
em geral seus artigos me deram um boa clareada ...
FALEU .
26/07/2002 2:40pm
(~22 anos atrás)
Fatal error: Cannot redeclare clear_parse() in c:\php\includes\class.FastTemplate.php3 on line 636
fiz tudo como vc falo mas naum funfo... se poder dar uma lhadinha agradeço...
Eduardo Malta