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
[email protected]
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
-~----------~----~----~----~------~----~------~--~---