Foros del Web » Programando para Internet » PHP »

comparacion de fechas

Estas en el tema de comparacion de fechas en el foro de PHP en Foros del Web. hola amigos espero y me puedan ayudar con este problema!!! Resulta que tengo dos campos de tipo date, (fromdate, todate), ahora quiero elegir registros que ...
  #1 (permalink)  
Antiguo 08/02/2012, 17:42
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
comparacion de fechas

hola amigos espero y me puedan ayudar con este problema!!!

Resulta que tengo dos campos de tipo date, (fromdate, todate), ahora quiero elegir registros que de tres tipos;

si la fecha actual es mayor que fromdate y todate seran registros pasados
si la fecha actual es mayoy o igual que fromdate pero menor o igual que todate registros presentes
si la fecha actual es menor que fromdate y todate seran registros pasados

ya tengo algo de codigo pero no sirve aqui esta

Código PHP:
$fechahoy date("Y-m-d"); //obtengo la fecha de hoy

//y aqui las consultas
$query "SELECT * FROM registros WHERE ($fechahoy > 'fromdate' AND $fechahoy > 'todate') ORDER BY fromdate ASC "//Consulta para registros pásados

$query "SELECT * FROM registros WHERE ($fechahoy >= 'fromdate' AND $fechahoy <= 'todate') ORDER BY fromdate ASC "//Consulta para registros presentes

$query "SELECT * FROM registros WHERE ($fechahoy < 'fromdate' AND $fechahoy < 'todate') ORDER BY fromdate ASC "//Consulta para registros futuros 
y cuando ejecuto la primer consulta me selecciona registros que no deberia por ejemplo al ejecutar la primer consulta me arroja estos tres resultados

fromdate todate
2011-12-13 2012-02-15
2012-01-31 2012-02-29
2010-10-06 2010-11-06

el tercer registro si lo deberia de seleccionar ya que lafecha de hoy (2012-02-08) es mayor a las dos fechas de este
el segundo y primer registro no lo deberia de seleccionar ya que la fecha de hoy si es mayor o igual que fromdate pero no es menor o igual que todate

alguien que me diga como hacer las consultas correctamente!!!!!
  #2 (permalink)  
Antiguo 08/02/2012, 20:39
Avatar de TheoriaX  
Fecha de Ingreso: agosto-2009
Ubicación: Hermosillo, Sonora
Mensajes: 217
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: comparacion de fechas

y si intentas usando el BETWEEN de MySql...
__________________
Desarrollador .Net y Php
MCTS Framework 2.0:Windows Applications
Microsoft Certificated Profesional
  #3 (permalink)  
Antiguo 09/02/2012, 10:19
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: comparacion de fechas

El BETWEEN de MySql, lo podria ocupar para el registro presente, ya que la fecha estaria entre fromdate y todate, pero para comparar que fromdate y todate sean mayores y menores dependiendo el caso no funcionaria.

Gracias de todos modos TheoriaX
  #4 (permalink)  
Antiguo 09/02/2012, 10:28
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 9 meses
Puntos: 53
Respuesta: comparacion de fechas

por que encierras entre comillas el nombre de los campos?
intenta de esta forma
Cita:
$query = "SELECT * FROM registros WHERE fromdate < '$fechahoy' AND todate<'$fechahoy' ORDER BY fromdate ASC "; //Consulta para registros pásados
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #5 (permalink)  
Antiguo 09/02/2012, 12:56
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: comparacion de fechas

Gracias PIRRUMAN funciono excelente muchas gracias!!!!

Etiquetas: comparacion, registro
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:06.