Ir para conteúdo
Fórum Script Brasil
  • 0

Codigo de filtro de busca - AJUDA


dionathan

Pergunta

Ola meus amigos.

Estou montando um sistema para cadastro, consulta, alteração e impressão de informações. Porem estou com um pequeno problema na hora de realizar o meu filtro de busca.

Eu tenho tres campos: STATUS - SOLUCIONADO ( SIM OU NÃO )

SISTEMA ULTILIZADO - ( é um select com o sistema ultilizado no cliente )

E DESCRIÇÃO DO ERRO - ( é um input - tex... aonde o usuario pode digitar a informação para busca )

Ate ai tudo beim......o meu problema esta na hora de realizar o filtro.

muitas vezes ele não traz as informações.

segue abaixo o codigo do meu filtro.

<?php

mysql_connect('localhost','root',''); // Realizo a conexão com o banco de dados

mysql_select_db('bderros'); // Seleciono o banco de dados

$solucao=$_POST['solucao'];

$sistema=$_POST['sistema_util'];

$erro=$_POST['erro'];

if ($_POST['enviar'] == 'Pesquisar') {

if ((! empty($_POST['solucao'])) AND (empty($_POST['sistema_util'])) AND (empty($_POST['erro']))) {

$pesquisa=mysql_query("SELECT * FROM `cad_erros` WHERE `solucionado`LIKE'%$solucao%'") or die ("Erro ao buscar cadastro.");}

else if ((empty($_POST['solucao'])) AND (! empty($_POST['sistema_util'])) AND (empty($_POST['erro']))){

$pesquisa=mysql_query("SELECT * FROM `cad_erros` WHERE `sistema_util`LIKE'%$sistema%'") or die ("Erro ao buscar cadastro.");}

else if ((empty($_POST['solucao'])) AND (empty($_POST['sistema_util'])) AND (!empty($_POST['erro']))){

$pesquisa=mysql_query("SELECT * FROM `cad_erros` WHERE `desc_erro`LIKE'%$erro%'") or die ("Erro ao buscar cadastro.");}

else if ((!empty($_POST['solucao'])) AND (!empty($_POST['sistema_util'])) AND (empty($_POST['erro']))) {

$pesquisa=mysql_query("SELECT * FROM `cad_erros` WHERE `solucionado`LIKE'%$solucao%' AND `sistema_util`LIKE'%$sistema%'") or die ("Erro ao buscar cadastro.");}

else if ((!empty($_POST['solucao'])) AND (empty($_POST['sistema_util'])) AND (!empty($_POST['erro']))) {

$pesquisa=mysql_query("SELECT * FROM `cad_erros` WHERE `solucionado`LIKE'%$solucao%' AND `desc_erro`LIKE'%$erro%'") or die ("Erro ao buscar cadastro.");}

else if((empty($_POST['solucao'])) AND (!empty($_POST['sistema_util'])) AND (!empty($_POST['erro']))) {

$pesquisa=mysql_query("SELECT * FROM `cad_erros` WHERE `sistema_util`LIKE'%$sistema%' AND `desc_erro`LIKE'%$erro%'") or die ("Erro ao buscar cadastro.");}

}

preciso muito desse filtro..

se puderem me ajudar eu agradeço.

Grato..

Editado por dionathan
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Rapaz, você não precisa desse monte de querys, basta colocar uma no final do código e em cada condição criar uma variável $where onde você insere o Where do Select que você vai fazer no final do arquivo.

Tenta dessa forma :)

<?php
mysql_connect('localhost','root',''); // Realizo a conexão com o banco de dados
mysql_select_db('bderros'); // Seleciono o banco de dados

$solucao = $_POST['solucao'];
$sistema = $_POST['sistema_util'];
$erro     = $_POST['erro'];

if($_POST['enviar'] == 'Pesquisar'){
    
    $where="";//Caso nenhum filtro seja selecionado.
    if((!empty($_POST['solucao'])) && (empty($_POST['sistema_util'])) && (empty($_POST['erro']))){
        $where = "Where solucionado LIKE '%".$solucao."%'";
    }
    
    if((empty($_POST['solucao'])) && (!empty($_POST['sistema_util'])) && (empty($_POST['erro']))){
        $where = "Where sistema_util LIKE '%".$sistema."%'";
    }

    /*
    
    Insira o restante das condições aqui...
    
    **/
        
    mysql_query("Select * From cad_erros ".$where) or die ("Erro ao buscar cadastro.");
}
?>

Editado por dedas
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...