Dúvidas Gerais

Gravatar de luizfd luizfd Tópico publicado em
28/01/2010, 04:46:05

Duvida com consulta

Pessoal, bom dia, tenho que fazer uma consulta em uma tabela comparando dois campos da mesma com o id passado como parametro e tornar esse consulta paginada, como posso fazer isso?

Gravatar de Klawdyo Klawdyo Resposta publicada em
28/01/2010, 09:57:41

Duvida com consulta

Como seriam esses dois campos? Como você está pensando em compará-los com o ID passado?

Gravatar de luizfd luizfd Resposta publicada em
28/01/2010, 10:11:56

Duvida com consulta

Klawdyo,

são dois campos numéricos simples, que funcionam como chave estrangeira.
Se eu fosse fazer no braço, faria algo assim: "select * from tabela where campo1=$id union select * from tabela where campo2=$id"

Gravatar de Klawdyo Klawdyo Resposta publicada em
28/01/2010, 11:14:07

Duvida com consulta

O model não faz automaticamente select union, mas vc pode colocar essa sua sql diretamente no model.

Model::fetch("select * from tabela where campo1=$id union select * from tabela where campo2=$id")

Se as variáveis $id vierem do usuário, então lembre-se de escapar a consulta usando o método Model::escape().

Nunca confie no usuário.

http://spaghettiphp.org/docs/developer-guide/models/index

Gravatar de luizfd luizfd Resposta publicada em
28/01/2010, 11:21:03

Duvida com consulta

Dois pontos:
1-) esse método FETCH é da versão atual correto? eu uso a versão 0.1
2-) o id vem de uma consulta em outra tabela, na qual esse campo é a chave primária, e em seguida é transformada em link para posteriormente ser feita a consulta em questão

Gravatar de Klawdyo Klawdyo Resposta publicada em
28/01/2010, 13:27:26

Duvida com consulta

no 0.1, use o fetchResults()

Gravatar de Klawdyo Klawdyo Resposta publicada em
28/01/2010, 13:29:03

Duvida com consulta

..... pois é, cara.... eu tbm tô utilizando o 0.1 em um projeto que se estendeu mais que o imaginado.... mas assim que for publicado, eu já vou iniciar a conversão para o 0.3 logo.

Gravatar de luizfd luizfd Resposta publicada em
29/01/2010, 04:53:08

Duvida com consulta

Funcionou, muito obrigado pela ajuda

Gravatar de luizfd luizfd Resposta publicada em
29/01/2010, 20:59:45

Duvida com consulta

Klawdyo,

não estou conseguindo usar o ESCAPE,
qual a maneira correta de usá-lo?

Gravatar de Klawdyo Klawdyo Resposta publicada em
29/01/2010, 22:51:28

Duvida com consulta

Você escapa a sql antes de realizar a consulta.

$sql = $this->NomeModel->escape('select * from tabela');
Gravatar de luizfd luizfd Resposta publicada em
30/01/2010, 08:40:54

Duvida com consulta

Mais uma vez, obrigado

Você deve estar logado para responder a um tópico ou adicionar um novo.
Efetue login ou Registre-se para participar das discussões.