Sistema de busca em mais de 1 campo
Pessoal, tenho um sistema de busca simples, que faz uma busca na tabela "cadastros" no meu BD
então a tabela está estruturada assim:
id
titulo
servico
endereco
tel
cidade
estado
http
Então, essa tabela são cadastrados de empresas!
E as empresas estão cadastradas de acordo com o serviço que fazem:
ex:
C&C Material Construção - Loja Virtual
Argamassa
Av. Maria Luiza Pompeu de Camargo, 333
Campinas / SP
Tel: (19) 4001-0100
Email: sac@cec.com.br / televendas@cec.com.br
C&C Material Construção - Loja Virtual
Tubo, Conexão
Av. Maria Luiza Pompeu de Camargo, 333
Campinas / SP
Tel: (19) 4001-0100
Email: sac@cec.com.br / televendas@cec.com.br
C&C Material Construção - Loja Virtual
Antena
Av. Maria Luiza Pompeu de Camargo, 333
Campinas / SP
Tel: (19) 4001-0100
Email: sac@cec.com.br / televendas@cec.com.br
A única coisa q muda é o serviço.. então, se a pessoa busca "C&C", vai achar todos os cadastrados, de todas as categorias...
E se a pessoa busca "Antena" vai achar esse cadastro da C&C, assim como de outras empresas q tb oferecem esse serviço..
Mas se a pessoa procurar "C&C antena" daí ele volta 0.. ele ñ busca em 2 campos.. mesmo q tenha esse registro, ele ñ procura assim..
E eu gostaria de mudar isso.. pq ficaria muito mais fácil pra pesquisar.... mas como vou fazer pra ele reconhecer todas as palavras que forem digitadas no campo, como palavras soltas, e buscar 1 a 1 em cada campo??????
Me ajudem por favor!!!!
vou postar meu código para verem:
<? if(!empty($HTTP_POST_VARS[palavra])) { $palavra = str_replace(" ", "%", $HTTP_POST_VARS[palavra]); // Altera os espaços adicionando no lugar o simbolo % $qr = "SELECT * FROM cadastros WHERE titulo LIKE '%".$palavra."%' OR cidade LIKE '%".$palavra."%' OR servicos LIKE '%".$palavra."%' OR estado LIKE '%".$palavra."%' OR palavras LIKE '%".$palavra."%' ORDER BY titulo ASC"; // definimos para buscar no campo1 e ordenar pelo campo que você quiser. $sql = mysql_query($qr) or die (mysql_error()); // Executa a query no Banco de Dados $total = mysql_num_rows($sql); // Conta o total ded resultados encontrados echo "<font face=Verdana, Arial, Helvetica, sans-serif><font size=1>Sua busca retornou <b>$total</b> resultados.</font><br><br>\n"; // mostra quantos resultados retornou e logo depois exibe while ($dados = mysql_fetch_array($sql)) {$campo1 = $dados["titulo"];$campo2 = $dados["endereco"];$campo3 = $dados["cidade"];$campo4 = $dados["tel"];$campo5 = $dados["id"];$campo6 = $dados["http"];$campo7 = $dados["email"];$campo8 = $dados["estado"];$campo9 = $dados["servicos"];if ($campo6 != ""){$varHref = "<a href=\"http://$campo6\" target=\"_blank\" ><b>$campo1</b></a>";}else{$varHref = $campo1;} echo "<font color=#00496e><b>".$varHref."</b></font><br><i>$campo9 </i><BR>$campo2<BR>$campo3 / $campo8 <br>Tel: $campo4<BR>Email: <a href=mailto:$campo7>$campo7</a><BR><BR>";} } ?>
Valewww pessoal!!!!
Discussão (4)
Carregando comentários...