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

Busca


MTavares

Pergunta

Caros colegas,

Estou querendo fazer uma busca interna do qual será buscado de um formulário HTML normal um campo ou dois, ou seja, vamos supôr que tenhamos um formulário com as seguintes informações:

setor;

numero;

destinatario;

local;

data.

Logo o cliente quer buscar no banco um ou mais informações cadastradas lá, por ex: ele seleciona o setor ou numero, ou apenas o local, etc. Eu tentei algo como:

<?

...

$consulta = "SELECT * FROM documentos WHERE area LIKE '%".$_POST['setor']."%' OR numero LIKE '%".$_POST['numero']."%' OR destinatario LIKE '%".$_POST['destinatario']."%' OR local LIKE '%".$_POST['local']."%' OR data LIKE '%".$_POST['data1']."%'";

..?

Só que não está dando certo... quando coloco o "AND" funciona se preenchermos todos os campos.

Abs.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

O bom seria você fazer a query encadeada, ou seja:

<?php
if(isset($_POST['setor']) AND !empty($_POST['setor'])){
$p1 = "WHERE area LIKE '%".$_POST['setor']."%'";
}
if(isset($_POST['numero']) AND !empty($_POST['numero'])){
$p2 = "OR numero LIKE '%".$_POST['numero']."%'";
}

$consulta = "SELECT * FROM documentos $p1 $p2";
?>

Mais ou menos por ai, assim vejo não força o mysql no like %%, e também resolve o seu problema, só veja que, vai ter que aprimorar mais isso ai, pois a menos que um campo seja sempre obrigatório, teria que ver onde vai começar ao WHERE, pois nesse exemplo que passei se o cara deixar o setor em branco já dá problema...

Link para o comentário
Compartilhar em outros sites

  • 0

Legal ESerra;..

Vou tentar da forma como você me passou, quanto a validação, alguns campos serão em combox... e outros acredito que não sejam obrigatórios, pois a busca será aleatória, ou seja, ele pode buscar somente a cor ou a cor e a calça, ou a calça e a camisa, e por aí vai...

Obrigado + 1 vez pela força!!!!

abs

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
      652k
×
×
  • Criar Novo...