Jump to content


Photo

Filtro De Busca


  • Faça o login para participar
7 replies to this topic

#1 AlessandroWeb

AlessandroWeb

    Turista

  • Usuários
  • 56 posts
  • Sexo:Masculino
  • Localidade:Suzano / SP

Posted 02/12/2009, 17:35

Slave rapaziada..

Eu kero saber como faço um filtro de busca igual esse do fórum.

Se cv clicar em MAIS OPÇÕES - ao lado da caixa de busca -

vc vai ver q tem uns skemas tipo

Data TAL até TAL

é isso que kero fazer.

Eu fiz assim:

data > 1 and data < 3
ateh aew BLZ retornará 2

mas se deixar em branco qualquer um dos dois campos.. não retorna NADA.

VLW desde jah!!
Atenciosamente,
Alessandro Santos.
igloo Internet Solutions
www.igloointernet.net

#2 '' sem.Ponto

'' sem.Ponto

    Super Veterano

  • Ex-Admins
  • 2098 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte

Posted 02/12/2009, 19:03

Uma solução é montar a query com base nas informações enviadas. ;)

Exemplo:

<?php

$data1 = 1;
$data2 = 3;

if($data1) $conds[] = 'data > '.$data1;
if($data2) $conds[] = 'data < '.$data2;

$conds = (count($conds)>0) ? ' WHERE '. implode(" AND ", $conds) : NULL;

$sql = "SELECT * FROM tabela". $conds;
echo $sql;

?>

Eu dei um echo no $sql para você ver o resultado. Para executar, acho que você já sabe que é com a função mysql_query() né?

A propósito... lindo código, não? :lol:
att,
Muller Dias
ex-administrador Fórum WMO

#3 offspring

offspring

    O_o

  • Ex-Admins
  • 946 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 03/12/2009, 09:18

use between, se tiver em branco ele irá procurar desde o começo, exemplo:

SELECT * FROM `data` WHERE data BETWEEN '' AND '2009-12-31'
para tudo...

para intervalo:
SELECT * FROM `data` WHERE data BETWEEN '2009-12-01' AND '2009-12-31'

#4 AlessandroWeb

AlessandroWeb

    Turista

  • Usuários
  • 56 posts
  • Sexo:Masculino
  • Localidade:Suzano / SP

Posted 03/12/2009, 13:14

use between, se tiver em branco ele irá procurar desde o começo, exemplo:

SELECT * FROM `data` WHERE data BETWEEN '' AND '2009-12-31'
para tudo...

para intervalo:
SELECT * FROM `data` WHERE data BETWEEN '2009-12-01' AND '2009-12-31'



Como funfa essa função BETWEEN?
se é que issu eh uma função..
Atenciosamente,
Alessandro Santos.
igloo Internet Solutions
www.igloointernet.net

#5 offspring

offspring

    O_o

  • Ex-Admins
  • 946 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 03/12/2009, 13:22

BETWEEN seria a mesma coisa que ENTRE


tipo:

SELECT * FROM `data` WHERE data BETWEEN '2009-12-01' AND '2009-12-31'
procure por tudo em que a data seja entre 2009-12-01 até 2009-12-31

a mesma coisa para numeros

SELECT * FROM `numeros` WHERE numero BETWEEN '15' AND '30'
procure numeros algo que fiquem entre 5 a 30

etc...

era isso que vc queria?

#6 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 03/12/2009, 18:12

SELECT * FROM `numeros` WHERE numero BETWEEN '5' AND ''
procure numeros algo que fiquem a partir de 5

Mas aí não funciona, não? :assobio:

Nestes casos onde tu só tem uma variável acredito eu que o correto seria o uso do operador menor-que (<) ou maior-que (>).

[]’sAté mais

#7 offspring

offspring

    O_o

  • Ex-Admins
  • 946 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 03/12/2009, 19:14

SELECT * FROM `numeros` WHERE numero BETWEEN '5' AND ''
procure numeros algo que fiquem a partir de 5

Mas aí não funciona, não? :assobio:

Nestes casos onde tu só tem uma variável acredito eu que o correto seria o uso do operador menor-que (<) ou maior-que (>).

[]’s



ooooooooops. me empolguei... realmente não funciona... vou editar meu post

não consigo editar, vc faz isso? assim ninguem faz a cagada que eu postei rs :D

valeu

Edição feita por: offspring, 03/12/2009, 19:15.


#8 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 03/12/2009, 19:28

ooooooooops. me empolguei... realmente não funciona... vou editar meu post

não consigo editar, vc faz isso? assim ninguem faz a cagada que eu postei rs :D

valeu

Apaguei então as consultas com BETWEEN usando '', está Ok assim? :)

Tivemos que desabilitar o botão Editar em posts antigos devido ao uso inadequado do mesmo - tinha gente apagando todos os prórpios posts (coisa de pessoa mesquinha mesmo). Agora o botão Editar só permanece ativo por 15 minutos após as postagens. ;-)

[]’sAté mais




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq