Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

AerSoftware

Include Usando o Smarty

Recommended Posts

Oi pessoal, tudo bem?Olha só, li num livro de PHP que é mais fácil criar páginas em php usando templates, certo? Bom, usando o Smarty, tenho como eu chamar uma include por ele?Vou explicar melhor:Fiz uma página de teste em PHP q usava 3 tabelas. Uma serve como cabeçalho do logotipo. Outra pequena serve pra apresentação de usuário e a outra é dividida em 3, formando um menu na esquerda, uma página de apresentação no meio e um login na direita.Bom, nessa página em php, eu chamo includes nas tabelas, e crio o menu, login e apresentação como a include. Então quando ele carrega a página, as outras são carregadas e aparecem no lugar da tabela. Bom, isso deve ser normal pra quem programa em php.A dúvida é a seguinte, como chamo uma include quando a página é feita como Templeta? já que não vai códigos php nela. Gostaria de fazer do mesmo jeito que a página php.. criando as tabelas e chamando as páginas php por includes. Eu tentei fazer o seguinte: Criar o template (index.tpl) e no local das tabelas colocar variáveis, mas no index php não tem como inserir uma include dentro de uma variável, só texto..Tem algum jeito de fazer isso?Allan Elias Ramos :wacko:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais ou menos "red neck", nesse exemplo esta sendo incluído um template dentro de outro, certo? Eu gostaria de saber como inserir um arquivo php dentro do template. Por exemplo, na tabela que serve de menu, ter uma chamada pro arquivo "menu.php", pra ele carregar essa página dentro da tabela..Allan Elias Ramos :-)

Compartilhar este post


Link para o post
Compartilhar em outros sites

o.o, nao faz muito sentido isso XDporque você nao inclui o menu.php aonde você exibe o seu html ?[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora eu q me perdi.. hehe.. assim:

 

A idéia do template não é separar o html dos códigos php? Então eu teria uma página com toda identação do html chamada index.tpl, e outra com os códigos php chamada index.php, certo? Na exibição ele iria juntar tudo, e mostrar uma página só identada com o html do tpl e com os códigos do php.

 

Eu fiz uma página em php, com o html junto que ficou assim (uma parte só)

 

<html><head><title>Título</title></head><body>      <table width="99%" height="403" border="1" bordercolor="#000000">        <tr>           <td bordercolor="#FFFFFF" bgcolor="#FFFFFF">             <?php include "login.php"; ?></align>            <div align="top"></div></td>        </tr>      </table></td></body></html>

Essa é só uma parte do código que vai ter em uma das tabelas, uma chamada pra página "login.php", q vai fazer toda verificação do login e tal..

 

E a dúvida é essa.. eu tenho como, no arquivo .tpl ter uma chamada igual a essa?

 

           <?php include "login.php"; ?></align>

Aí aconteceria a mesma coisa.. Eu fiquei confuso pq, pelo que entendi, no arquivo .tpl, não vai códigos php.. eu tentei até colocar esse código acima numa variável, e no local onde ele seria exibido, eu chamaria a variável, mas nao deu certo..

 

Acho q agora consegui explicar direitinho, é meio dificil por aqui.. hehe..

 

 

 

Allan Elias Ramos B)

Compartilhar este post


Link para o post
Compartilhar em outros sites

hum, sim o conceito do template é separar o html do php...ele funciona assim:você precisa de-> uma pagina html-> uma pagina phpa html seria as tabelas, etc etcphp seria para processar os dados... e exibir o htmlentao por exemplo, uma pagina de form ficaria assim:<?if(isset($_GET["act"]) && $_GET["act"] == "submit"){ // comandos para submeter}$smarty = blabla;// configuracao do smarty$smarty->display("form.html");?>entendeu ? entao o form.html teria que estar submetido para ?act=submiteu nao vejo porque adicionar o login.php dentro do form.html, sendo que você pode adicionar quando ele for processado seguindo esse esquema da querystring: ?act=login, ?act=submit.login, etc etcentendeu ?qualquer coisa posta ai que eu tento ser mais claro =]][]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, sim, entendi.. esse conceito eu entendi. O que ainda tenho dúvida é assim:Aquela página de index, que eu postei parte do código, só vai ter as tabelas. O conteúdo das tabelas vão estar em outros arquivos separados.Tipo, a página index.php terá:Tabela de CabeçalhoTabela de MenuTabela do Corpo do SiteTabela de LoginCada uma dessas tabela vai ter uma chamada (include) que vai carregar as páginas:Cabecalho.phpMenu.phpCorpo.phpLogin.phpEntão, fazendo a página sem o template, eu criaria as tabelas todas e no meio delas, colocaria o código "<?php include "login.php"; ?>". Aí quando ele rodasse no navegador, iria aparecer dentro daquela tabela, a página Login.php, que teria um lugar pra preencher usermane, senha e tal. Pelo q me lembro, isso se fazia com frames antes.. onde se montava a estrutura da página e ele carregava as páginas em cada lugar designado. Aí q entra a dúvida. Já que no template não vai código php, eu nao sei como fazer pra ele carregar a página "login.php" na tabela exata que ele tem q ficar. Já que o código "<?php include "login.php"; ?>" não vai dar pra usar no arquivo .tpl.Bah, até eu to me perdendo aqui na explicação.. hehehe..Allan Elias Ramos

Compartilhar este post


Link para o post
Compartilhar em outros sites

ah sim... cara, na real mesmo, se você ainda nao tem conhecimentos com programacao a templates, eu recomendo você a usar um sistema mais simples, o smarty é muitoooooooooo complexo...

 

mais em fim

 

da uma lida aqui, e ve se ajuda

 

http://www.imasters.com.br/artigo.php?cn=3326&cc=44

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.