Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Criteria não funciona Estou fazendo um filtro usando múltiplos criteria o resultado final fica este (((disciplina_id = '60' AND (professor_id != '29' AND publica = 'S')) OR (professor_id = '29' AND disciplina_id = '60'))) colocando no while do sql funciona perfeitamente (no hostgator) no meu computador com servidor local também No Hostgator aplicando o criteria da erro Exceção SQLSTATE[HY093]: Invalid paramet...
TB
Criteria não funciona  
Estou fazendo um filtro usando múltiplos criteria
o resultado final fica este (((disciplina_id = '60' AND (professor_id != '29' AND publica = 'S')) OR (professor_id = '29' AND disciplina_id = '60')))
colocando no while do sql funciona perfeitamente (no hostgator)
no meu computador com servidor local também
No Hostgator aplicando o criteria da erro
Exceção
SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens
Para mim, não estão faltando parâmetros

O que pode estar errado?
Todos os outros filtros funcionam epenas esse da erro.

Obrigado

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (1)


MA

Boa tarde
Simplifica sua query que fica melhor de mapear seus parametros
disciplina_id = '60' AND (publica = 'S' OR professor_id = '29' )


Por exemplo ficaria assim:
  1. <?php
  2.  // seu código ......
  3.         try
  4.         {
  5.             TTransaction::open('banco'); // abre uma transação
  6.             $conn TTransaction::get(); // obtém a conexão
  7.             
  8.             $sth $conn->prepare('SELECT * sua_tabela
  9.                                    WHERE disciplina_id = ? AND (publica = ? OR professor_id = ? )');
  10.             
  11.             $sth->execute(array(60,'S'29));
  12.             $result $sth->fetchAll();
  13.             
  14.             // exibe os resultados
  15.             foreach ($result as $row)
  16.             {
  17.                // $row é um array que corresponde um registro na tabela
  18.             }
  19.             TTransaction::close(); // fecha a transação.
  20.         }
  21.         catch (Exception $e)
  22.         {
  23.             new TMessage('error'$e->getMessage());
  24.         }
  25. Boa tarde e espero ter ajudado!