Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/08/2012, 04:24
roncco
 
Fecha de Ingreso: abril-2012
Mensajes: 63
Antigüedad: 12 años
Puntos: 2
Buscando entre dos fechas

Debo ser el tipo más tonto del mundo, pero ni consigo hacer que esto funcione ni sé encontrar la respuesta en el buscador.

Os explico, un usuario se registra y se introduce en la base de datos (mysql) su fecha de nacimiento, tipo de datos date, en formato (1996-05-18).

Otro usuario quiere buscar personas registradas dentro de una franja de edad. Pongamos que quiere encontrar a alguien entre 18 y 40 años. En php lo estoy haciendo así:

Código PHP:
Ver original
  1. $edadMinima = date("Y-m-d",strtotime("today - 18 years"));  
  2.  $edadMaxima = date("Y-m-d",strtotime("today - 40 years"));

Y se trataría de hacer la consulta a la base de datos, pasando las dos variables anteriores a una función y haciendo lo que sigue:

Código PHP:
Ver original
  1. "SELECT  nick FROM usuarios
  2. WHERE fecha_nacimiento between :edadMaxima and :edadMinima";

Luego enlazo con bindparam las dos variables, y no consigo ningún resultado. He sustituido el between por los signos de menor y mayor, y nada. Tengo la sensación
de que de alguna manera estoy comparando tipos distintos, pero es que no consigo pillar el fallo, agradeceré cualquier pista.