pessoal oww eu de novo.. fiz da seguinte maneira <?php class ContactController extends AppController {
var $name = 'Contact'; var $uses = array(); var $helpers = array('Html', 'Form', 'Format', 'Layout'); var $components = array('Email'); function index() { if ( empty($this->data) ) { pr($this->data); }else{ //pr($this->data); $this->Contact->data = $this->data; if ($this->Contact->invalidFields($this->data)) { echo 'envio'; $this->Email->to = '[EMAIL PROTECTED]'; $this->Email->subject = 'Cake test template email'; $this->Email->replyTo = '[EMAIL PROTECTED]'; $this->Email->from = 'Cake Test Account <[EMAIL PROTECTED]>'; $this->Email->template = 'test'; //Do not pass any args to send() if ( $this->Email->send() ) { $this->Session->setFlash('Template email sent'); } else { $this->Session->setFlash('Template email not sent'); } $this->redirect('/contato'); }else{ $this->redirect('/contato/erro'); } pr($this->data); } } } ?> porem esta gerando esse erro Fatal error: Call to undefined method stdClass::invalidFields() in F: \Desenvolvimento\htdocs\cake\app\controllers\contact_controller.php on line 23 Porque sera que não esta reconhecendo a função invalidFields? Desde já agradeço pessoal.. AT+ On 23 Jan, 20:39, Juan Basso <[EMAIL PROTECTED]> wrote: > Eber, > > Só lembrando que a versão 1.2.6311 entrou em desuso a parte de passar > os dados por parâmetro. O modo de fazer tem que usar o $this->Modelo->data = > $this->data e depois utilizar o validates() ou o > > invalidFields() que são basicamente a mesma coisa. > A diferença é que validates retorna um valor boolean (true se for > valido, false não...) e a invalidFields retorna um array com os erros. > Aí vai do que você quer fazer... > > Mas eu havia esquecido do $useTable = false. > > Juan Basso > > On 23 jan, 20:14, DrWinux <[EMAIL PROTECTED]> wrote: > > > valeu gente, vcs sauvaram minha vida. > > heheh > > > at+ > > > On 23 jan, 19:21, "Eber Freitas Dias" <[EMAIL PROTECTED]> wrote: > > > > Eu acho que a melhor maneira é você fazer como o Sadjow falou e dai no seu > > > controller criar uma função mais ou menos assim: > > > > if($this->Model->validates($this->data)) { > > > //executa o envio do email... > > > > } > > > > pronto, se não validar, ele vai retornar à página automaticamente com as > > > informações necessárias pra corrigir o formulário... Acho que é isso... > > > > 2008/1/23 Sadjow Medeiros Leão <[EMAIL PROTECTED]>: > > > > > Coloca no Model : var $useTable = false; > > > > > que resolve.. > > > > > Valeu! > > > > > Em 23/01/08, DrWinux <[EMAIL PROTECTED] > escreveu: > > > > > > iai pessoal... > > > > > nem resolvi a duvida passada e ja estou encomodando novamente... > > > > > pesquisei e so achei exemplos para o cake 1.1 > > > > > > aqui vai. > > > > > criei o model da seguinte maneira > > > > > Versão: 1.2 > > > > > > <?php > > > > > class Contact extends AppModel { > > > > > > var $name = 'Contact'; > > > > > var $validate = array( > > > > > 'setor' => array('numeric'), > > > > > 'email' => array( > > > > > 'rule' => array('minLength', > > > > > '10'), > > > > > 'message' => 'Por favor informe o > > > > > email.' > > > > > ), > > > > > 'message' => array( > > > > > 'rule' => array('minLength', > > > > > '10'), > > > > > 'message' => 'Por favor informe > > > > > uma > > > > > mensagem.' > > > > > ), > > > > > ); > > > > > > } > > > > > ?> > > > > > > ai a pergunta que mata.. > > > > > como uso o model para validar o meu formulario... > > > > > como se eu estivesse salvando no banco. > > > > > > mais ao inves disso irei envia-lo por email com o componente email... > > > > > > so preciso de um exemplo.. > > > > > se alguem já passou por isso, e souber de algum site > > > > > que tenha esse material, ficarei muito grato. > > > > > > desde já agradeço > > > > > AT+ > > > > -- > > > -- Éber Freitas Dias > > > -- > > > -- aCoruja.com - O curso que você quer está aqui! > > > -- DesignUp.pro.br - Vagas, freelas e estágios em design e afins!- > > > Ocultar texto entre aspas - > > > - Mostrar texto entre aspas - --~--~---------~--~----~------------~-------~--~----~ Recebeu esta mensagem porque está inscrito em Grupo "Cake PHP Português" do Grupos Google. Para enviar mensagens para este grupo, envie um email para cake-php-pt@googlegroups.com Para anular a inscrição neste grupo, envie um email para [EMAIL PROTECTED] Para mais opções, visite este grupo em http://groups.google.com/group/cake-php-pt?hl=pt-PT -~----------~----~----~----~------~----~------~--~---