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
  • Autor do tópico
  • 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

    ×