Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
rafaelhyppolito

[Resolvido] Diversas variaveis no mesmo campo de busca

Recommended Posts

Olá Pessoal!

Esse é meu primeiro tópico aqui e se estiver postando na area errada por favor me avisem.

Estou desenvolvendo (aos poucos) uma pagina de busca (MySQL), atualmente a página é toda em HTML e possui um unico campo de busca estilo google.

Minha dúvida é: Existe alguma forma, e como posso fazer para realizar uma busca no banco de dados com diversas palavras digitadas nesse unico campo como se fosse um filtro. Por Exemplo: Possuo uma tabela carros com o nome do carro, a descrição e diversas colunas que são os itens (item1, item2, item3...) daí o cara vai lá e digita no campo busca airbag, direção hidráulica e ABS e clica em buscar, então a consulta traz os registros que contém aqueles itens digitados.

Não tenho a mínima ideia de como fazer isso e se realmente seria possivel fazer isso. Se houver alguma forma ou então alguma sugestão melhor como a pessoa digitar o item e clicar em "adicionar" e ir adicionando item por item pra depois fazer uma busca com os itens adicionados.

Desde já agradeço quem puder ajudar...:confused:

Compartilhar este post


Link para o post
Compartilhar em outros sites

achoi q isso é teoricamente simples de fazer..

você pode digitar assim no campo:

airbag direção hidráulica ABS

e enviar através do metodo get ao script php... e então lá você pode receber a variavel que contem estas palavras, usar a funçao urlencode() para converter os espaços entre as palavras para %20.. e então depois usar um str_replace pra converter %20 para "+".

eai usar a funçao explode() para separar as palavras e joga-la num array.. e então usar um foreach para percorrer o array ( que pode muitas palavras chaves) e ai comparar com a consulta para retornar alguma coisa..

seria basicamente isto.. mas nao tenho como testar.. então fica só como sugestao para que você tente. abraço

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
 

Nossa ajudou muito mesmo, nem precisei converter os '+' fiz direto vou colocar o código abaixo pra quem quiser aproveitar:

Novamente Obrigado pela força dif...

Código PHP:

<?php
header('Content-Type: text/html; charset=utf-8');
//conexão com o servidor
$conect = mysql_connect("NOME_DO_SERVIDOR", "SEU_USUARIO", "SENHA");

// Caso a conexão seja reprovada, exibe na tela uma mensagem de erro
if (!$conect) die ("<h1>Falha na conexão com o Banco de Dados!</h1>");

// Caso a conexão seja aprovada, então conecta o Banco de Dados.
$db = mysql_select_db("NOME_DO_SEU_BANCO_DE_DADOS");
$db = mysql_query("SET NAMES 'utf8'");
$db = mysql_query('SET character_set_connection=utf8');
$db = mysql_query('SET character_set_client=utf8');
$db = mysql_query('SET character_set_results=utf8');

$inputBox=$_POST['inputBox']; //Faz a busca das palavras digitadas no campo busca no meu caso o nome do campo é o "InputBox"

//Aqui ele divide as Strings que estão separadas por vírgula
//Ex: se eu digitar ABS,Direção Hidráulica ele separa em duas
//Strings uma ficando ABS e a outra contendo Direção Hidráulica
$parte = explode(",", $inputBox);

//Depois disso é só fazer a pesquisa no Banco de dados com os itens que foram separados e colocados no array
$sql = mysql_query("DIGITE_AQUI_SUA_QUERY");//Consulta no banco de dados

//Aqui para teste pedi para ele exibir tudo que foi digitado e guardado em um array
foreach ($parte as $i) {
echo 'Item -> ' . $i . '</br>' . PHP_EOL;
}

?>

Editado por Mog.Lucas
Solucionado! // Adição de tag [code]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×