DM
[BLOG] Formulário de contato (TAction)
Na index do blog tenho esse codigo abaixo, só que quando envio o formulario, não faz nada, só da refresh. Estou fazendo certo?
Na função só coloquei um print_r e nos html só os campos para trocar.
Na função só coloquei um print_r e nos html só os campos para trocar.
- <?php
- if($_GET['action'] == 'contato')
- {
- $contato = new THtmlRenderer(ROOT."/site/{$theme}/partials/contato/contato.html");
- $nome = new TEntry('nome');
- $enviar = new TButton('enviar');
- $enviar->setAction(new TAction(array('ContatoSend', 'Send')), 'Enviar');
- $replace_contato = array();
- $replace_contato['nome'] = $nome;
- $replace_contato['enviar'] = $enviar;
- $contato->enableSection('contato',$replace_contato);
- $form = new TForm('contato_form');
- $form->add($contato);
- $form->setFields(array($nome,$enviar));
- $layout['titulo'] = 'Contato';
- $layout['conteudo'] = $form;
- }
- $page = new THtmlRenderer(ROOT."/site/{$theme}/layout.html");
- $page->enableSection('layout',$layout);
- $page->show();
- ?>
Danilo, conheço pouco do blog, mas pelo que vi o index controla as actions permitindo somente show_category e show_post. Há uma condição para tratar a ação ContatoSend?
Então, estou modificando o index, conforme minha necessidade, consegui fazer varias páginas, no entanto, gostaria de criar um formulário utilizando os componentes TEntry, TButton, TForm, etc... pq fazendo na mão eu consegui. A classe ContatoSend seria pra fazer o envio do email, mas no momento só coloquei um print_r pra ver o que esta chegando ate ele...
Fiz um teste rápido aqui. Acontece que a estrutura do frontend é mais sucinta que a do backend. Por exemplo, o TButton executa uma função javascript ao ser clicado, mas no frontend os javascripts não estão sendo carregados. E essa função chama o arquivo engine.php, também inexistente no frontend.
ahh, poxa.. vou fazer na mão mesmo... valeu Nataniel!!