Foros del Web » Programando para Internet » PHP »

consulta db con rango de fechas

Estas en el tema de consulta db con rango de fechas en el foro de PHP en Foros del Web. hola: tengo un campo de la base de datos que almacena la fecha de nacimiento de personas en formato año-mes-dia (xxxx-xx-xx). A su vez tengo ...
  #1 (permalink)  
Antiguo 18/02/2008, 15:19
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
consulta db con rango de fechas

hola:
tengo un campo de la base de datos que almacena la fecha de nacimiento de personas en formato año-mes-dia (xxxx-xx-xx).
A su vez tengo un formulario donde la gente pone un rango de edad para buscar por ejemplo: de 18 a 26 años

Yo esta usando algo asi:
Código PHP:
if (($_POST[ageini]<>"") and ($_POST[agefin]<>"")){
            
$ageini=date("Y")-$_POST[ageini];
            
$agefin=date("Y")-$_POST[agefin];
            
$sql=select from recruiters left join prereg_talents on recruiters.id=prereg_talents.recruiter_id where gender=and (`birth_dateLIKE '%$ageini%' OR `birth_dateLIKE '%$agefin%')";
        } 
pero algunos registros no me los devuelve y eso que entran en el rango. estoy haciendo bien la consulta?
  #2 (permalink)  
Antiguo 18/02/2008, 16:28
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Re: consulta db con rango de fechas

ese codigo al parecer devuelve los registros qe sean del año "ageini" o el "agefin", podrias construir las fechas completas despues de sacar el año, y ya con las fechas haces el select usando between
  #3 (permalink)  
Antiguo 19/02/2008, 09:25
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Re: consulta db con rango de fechas

darkasecas, como construyo la fecha? y si devuelvo los años que coicidan con las variables que paso por post.
  #4 (permalink)  
Antiguo 19/02/2008, 09:43
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 19 años, 5 meses
Puntos: 4
Re: consulta db con rango de fechas

Eso dependera en que formato trabajes las fechas, teniendo eso en cuenta basta utilizar la sentencia BETWEEN de MySQL... algo asi...
Código PHP:
  SELECT from tabla WHERE fecha BETWEEN 'fecha1' AND 'fecha2' 
Espero te sirva...
__________________
Un Caballero Jura Lealtad. Usa su espada para suprimir la Injusticia No Conoce el Odio y Tampoco el AMOR...
  #5 (permalink)  
Antiguo 19/02/2008, 10:34
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Re: consulta db con rango de fechas

Cita:
Iniciado por destor77 Ver Mensaje
darkasecas, como construyo la fecha? y si devuelvo los años que coicidan con las variables que paso por post.
Pues algo como
$fecha1="$ageini-01-01";
$fecha2="$agefin-12-31";

Y luego ya usas el between como dice Bellenger

En este caso seria desde el 1 de enero del año "ageini" hasta el 31 de dic del año "agefin"
  #6 (permalink)  
Antiguo 19/02/2008, 13:20
Avatar de davico_tico  
Fecha de Ingreso: marzo-2007
Mensajes: 27
Antigüedad: 17 años
Puntos: 0
Re: consulta db con rango de fechas

Este sería tu código entre el rango de [$ageini...$agefin]

Código PHP:
if (($_POST[ageini]<>"") and ($_POST[agefin]<>"")){ 
            
$ageini=date("Y")-$_POST[ageini]; 
            
$agefin=date("Y")-$_POST[agefin]; 
            
$sql=select from recruiters left join prereg_talents on recruiters.id=prereg_talents.recruiter_id where gender=and (`birth_date` >= '$ageini' AND `birth_date`<= '$agefin')"; 
        } 

Saludos.


David
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 18:30.