Jump to content


Photo

Como Filtrar Resultados Com "Idade Mínima" E "Idade Máxima


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

#1 Diego Velox

Diego Velox

    Turista

  • Usuários
  • 37 posts
  • Sexo:Masculino
  • Localidade:Esmeraldas - Minas Gerais, Brasil

Posted 31/12/2011, 14:35

Seguinte, tenho um sistema de usuários cadastrados e estou querendo deixar meus visitantes filtrarem os resultados da seguinte forma:

o visitante coloca no form "idade mínima" o valor 18 (anos) e na "idade máxima" 30 (anos), no lado do POST já coloquei os comandos SQL para outras filtragens, segue o formato:

$sqlbusca = "SELECT * FROM `usuarios` WHERE estado LIKE '%".$estadobusca."%' AND cidade LIKE '%".$cidadebusca."%' AND...";

Mas no banco só tem a data de nascimento dos usuários, no formato padrão (yyyy-mm-dd), se alguém puder e ajudar ficarei muito grato mesmo, valeu

Já achei a solução, só colocar o seguinte no arquivo do POST:

WHERE birthdate >= DATE_SUB(NOW(), INTERVAL 30 YEAR) 
  AND birthdate <= DATE_SUB(NOW(), INTERVAL 18 YEAR)


#2 d1eg0.

d1eg0.

    Normal

  • Usuários
  • 63 posts
  • Sexo:Masculino

Posted 06/01/2012, 15:38

Acredito que between tambem funcionaria no sql

#3 --The Matrix--

--The Matrix--

    Normal

  • Usuários
  • 118 posts
  • Sexo:Masculino
  • Localidade:Avaré - SP

Posted 12/01/2012, 14:19

Como o diego disse você poderia usar o BETWEEN, dê uma olhada na especificação em http://dev.mysql.com...perator_between

Além de o código ficar mais elegante e simples também gasta menos recurso.

[]´s
Ricardo Crivelli
Delphi Developer Certified
CobiT Foundation 4.1 Certified
@ricocrivelli
4Bytes Inc. - Desenvolvimento de sistemas especialistas web.




1 user(s) are reading this topic

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

IPB Skin By Virteq