entao gente, tipo, eu tava querendo fazer tipo um sistema de busca,
e queria q na query do mysql SELECT......fosse coloca um variavel q seria o paramentro para a busca, e como eu faria isso?
eu queria q tal palavra fosse buscada em todos os campos da tabela,
assim do jeito q eu tentei nao funcionou olhem
$cons="SELECT * FROM tabela WHERE '$var'";
eu queria q o conteudo da $var q foi trago por POST de otra pag, fosse buscado em todos os campos da tabela,
como eu faco isso?
brigada, bjs
tchau!

Consulta
Started By paula_faria, 06/05/2004, 02:52
6 replies to this topic
#1
Posted 06/05/2004, 02:52
#2
Posted 06/05/2004, 08:21
seria assim
$cons = "select * from TABELA where campo = ' ". $_POST['campo'] . " ' ";
www.andrewsmedina.com.br
#3
Posted 06/05/2004, 09:26
Só complementando pra melhorar a lógica da sua busca:
A diferença deste pro do cybermix, é que no caso dele, ele vai retornar só os registros onde campo for IGUAL a $_POST['campo'].. nesta aí acima, ele vai retornar os registros onde em campo, estiver a palavra ou a frase $_POST['campo'].
Os % funcionam como o * em sistemas de busca.. vc pode usar:
%palavra - campos q terminam com 'palavra'
palavra% - campos que começam com 'palavra'
%teste%palavra% - campos que tenham 'teste' e depois 'palavra'
SELECT * FROM tabela WHERE campo LIKE '%" . $_POST['campo'] . "%'
A diferença deste pro do cybermix, é que no caso dele, ele vai retornar só os registros onde campo for IGUAL a $_POST['campo'].. nesta aí acima, ele vai retornar os registros onde em campo, estiver a palavra ou a frase $_POST['campo'].
Os % funcionam como o * em sistemas de busca.. vc pode usar:
%palavra - campos q terminam com 'palavra'
palavra% - campos que começam com 'palavra'
%teste%palavra% - campos que tenham 'teste' e depois 'palavra'
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
[ Blog Desenvolvimento Web: http://www.newtonwagner.net/blog ]
[ Diário da Selva: http://www.diariodaselva.com/ ]
[ "Não existe um caminho para a paz; a paz é o caminho." Mahatma Gandhi ]
[ Blog Desenvolvimento Web: http://www.newtonwagner.net/blog ]
[ Diário da Selva: http://www.diariodaselva.com/ ]
[ "Não existe um caminho para a paz; a paz é o caminho." Mahatma Gandhi ]
#4
Posted 06/05/2004, 16:29
olhe, deu certim assim,
$consulta="SELECT * FROM tabela_1 WHERE campo_1 LIKE '$busca_'";
sendo a a $busca eh
$busca=$_POST[busca];
funcionou perfeitamente,
mas eu queria algo a mais q ao em vez dele buscar apenas no "campo_1" eu queria q ele buscasse em mais 3 campos pela mesma palavra, mas eu nao estou conseguindo isso,
eu tentei
(campo1, campo2, campo3, campo4) tentei tb
'campo1', 'campo2' .......
"campo1", "campo2"......
e tb nao deu certo,
como q eu faco isso??
e alguem pode me explicar diretio esse LIKE?
pq eu nao achei nada sobre no manual do mysql......
brigada, bjs
tchau!
$consulta="SELECT * FROM tabela_1 WHERE campo_1 LIKE '$busca_'";
sendo a a $busca eh
$busca=$_POST[busca];
funcionou perfeitamente,
mas eu queria algo a mais q ao em vez dele buscar apenas no "campo_1" eu queria q ele buscasse em mais 3 campos pela mesma palavra, mas eu nao estou conseguindo isso,
eu tentei
(campo1, campo2, campo3, campo4) tentei tb
'campo1', 'campo2' .......
"campo1", "campo2"......
e tb nao deu certo,
como q eu faco isso??
e alguem pode me explicar diretio esse LIKE?
pq eu nao achei nada sobre no manual do mysql......
brigada, bjs
tchau!
#5
Posted 07/05/2004, 16:21
Olha para selecionar em mais de um campo vc usa o or assim
E repeti conforme sua necessidade
Procure aqui que tem muita coisa aqui sobre o like
SELECT * FROM tabela_1 WHERE campo_1 LIKE '$busca_ or campo_2 LIKE '$busca_ ........
E repeti conforme sua necessidade

Procure aqui que tem muita coisa aqui sobre o like

#6
Posted 07/05/2004, 17:39
brigada thiago!!
funcionou certim!!!!
brigada mesmo,
bjstchau!
funcionou certim!!!!
brigada mesmo,
bjstchau!
#7
Posted 07/05/2004, 18:11
Gente ...
Eu utilizo uma consulta mais dinamica montando toda a QUERY em partes ... ex:
$select = 'SELECT '.$campos;
$from = ' FROM '.$tabela;
$where = ' WHERE ';
$vand = ' AND ';
$vor = ' OR ';
//PEGAR DADOS DO FORM E CONFORME VC QUISER VC CRIA A CONSULTA AQUI
$consulta = $campo.' = '.$_POST['resposta'].$vand;
.
.
.
$consulta = $consulta.$campo." LIKE '%".$_POST['resposta1'];
//NO FINAL È SO MONTAR
$comando = $select.$from.$where.$consulta; //SE NECESSARIO CRIAR UMA VAR PARA PO ORDER BY
Espero ter cooperado ...
Valeu
Eu utilizo uma consulta mais dinamica montando toda a QUERY em partes ... ex:
$select = 'SELECT '.$campos;
$from = ' FROM '.$tabela;
$where = ' WHERE ';
$vand = ' AND ';
$vor = ' OR ';
//PEGAR DADOS DO FORM E CONFORME VC QUISER VC CRIA A CONSULTA AQUI
$consulta = $campo.' = '.$_POST['resposta'].$vand;
.
.
.
$consulta = $consulta.$campo." LIKE '%".$_POST['resposta1'];
//NO FINAL È SO MONTAR
$comando = $select.$from.$where.$consulta; //SE NECESSARIO CRIAR UMA VAR PARA PO ORDER BY
Espero ter cooperado ...
Valeu
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)