Olá,

Melhorando:

A linha 301 tem:

$UserModel = & $this->_createModel();

Se eu trocar por:

$UserModel = $this->_createModel();

Funciona sem notices e sem erro. Porém, eu entendo que na primeira notação
estou pegando endereço para o objeto criado e na segunda estou igualando ao
conteúdo desse objeto criado. Aqui, se entendi bem, não vai fazer diferença,
mas e no resto do ambiente? Parece-me um erro de conceito do othAuth para
com a versão do PHP 4.4.7, mas a correção que fiz é válida?

Obrigado,
Benito

On 11/9/07, Josenivaldo Benito Junior <[EMAIL PROTECTED]> wrote:
>
> Boa noite Bill, Gustavo e lista,
>
> Bill, funcionou, agora ele não tenta mais criar um registro novo na tabela
> de usuários e atualiza os dados de last visit e modified corretamente. Porém
> continua  o notice:
>
> * Notice*: Only variables should be assigned by reference in *
> C:\xampp\htdocs\logbook\app\controllers\components\oth_auth.php* on line *
> 301*
>
> Obviamente seguido de um "Cannot modify headers" já que isso acontece em
> um redirecionamento.
>
> Algum outro ajuste no oth_auth.php?
>
> Grato.
> Benito
>
> On 11/8/07, Bill <[EMAIL PROTECTED] > wrote:
> >
> > Bom, vamos lá, instalei aqui o othAuth e funcionou perfeito, mas tem
> > alguns ajustes necessários, primeiro, vamos tratar deste erro:
> >
> > + ou - na linha 323 do component oth_auth.php, temos o seguinte trecho
> > de código:
> >
> > // Update the last visit date to now
> >             if(isset($this->user_table_last_visit))
> >             {
> >                 $row[$this->user_model][$this->user_table_last_visit] =
> > date('Y-m-d H:i:s');
> >                 $res =
> > $UserModel->save($row,true,array($this->user_table_last_visit));
> >             }
> >
> >
> > Substitua por isto:
> >
> > // Update the last visit date to now
> >             if(isset($this->user_table_last_visit))
> >             {
> >                 $row[$this->user_model][$this->user_table_last_visit] =
> > date('Y-m-d H:i:s');
> >                 $UserModel->id = $row[$this->user_model]['id'];
> >                 $res =
> > $UserModel->saveField($this->user_table_last_visit,$row[$this->user_model][$this->user_table_last_visit],true);
> >             }
> >
> > Na linha ($res =
> > $UserModel->saveField($this->user_table_last_visit,$row[$this->user_model][$this->user_table_last_visit],true);
> > ) eu troquei o $UserModel->save por $UserModel->saveField, que atualiza o
> > registro, atualizando assim a data de autenticação do usuário, quando o
> > save, apenas está tentando isnerir um novo registro, por isto dá erro
> >
> >
> > Ah, acessa a tabela de usuários do othAuth e deleta um registro em
> > branco q tem lá, ele foi criado por este save besta ai de cima..rs
> >
> > Qquer coisa so perguntar
> >
> >
> > > Bom dia,
> > >
> > > Não falei que iria começar a fazer perguntas? Seguindo a
> > > documentação do othAuth consegui por para funcionar (ainda tem
> > > bugs) mas estou tendo dois problemas:
> > >
> > > 1) Recebo a mensagem: Notice: Only variables should be assigned by
> > > reference in
> > > C:\xampp\htdocs\logbook\app\controllers\components\oth_auth.php on
> > > line 301 logo depois de logar com usuário correto. A linha 301
> > > está, se não me engano, fazendo o save do LoginAttempt model. Como
> > > dá esse Notice, não grava o login attempt e, obviamente, não faz o
> > > redirect corretamente.
> > >
> > > 2) Se apago o cookie de sessão (para forçar um login), recebo, além
> > > do item um acima, um
> > >
> > >
> > > Query: INSERT INTO `users` (`last_visit`,`created`,`modified`)
> > > VALUES ('2007-11-08 02:05:27','2007-11-08 02:05:27','2007-11-08
> > > 02:05:27')
> > > Warning: SQL Error: 1062: Duplicate entry '' for key 2 in
> > > C:\xampp\htdocs\cake_core\cake\libs\model\datasources\dbo_source.php o
> > > n line 440 que, neste caso, está tentando dar INSERT de valores na
> > > tabela users para uma key 2. O detalhe é que só tenho um usuário na
> > > tabela users e ele tem key (Id) 1. Os campos create e modified e
> > > last_visit do user (id=1) não são mexidos, mas a entrada 2 é criada
> > > (caso não exista) e depois recebo esse erro. Pergunta, o othAuth
> > > não deveria tentar um "UPDATE" ao invés de INSERT? Alguém sabe o
> > > que está causando isso?
> > > Grato
> > > Benito
> > >
> > >
> > > >
> >
>

--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Responder a