Foros del Web » Programando para Internet » PHP »

fechas!!1

Estas en el tema de fechas!!1 en el foro de PHP en Foros del Web. Ayudaaaaa!!!! disculpen las molestias, pero no se como hacer esto: tengo una pagina donde hay que elegir dos fechas. hasta ahi bien, ahora el problema ...
  #1 (permalink)  
Antiguo 27/06/2012, 06:45
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 4 meses
Puntos: 20
fechas!!1

Ayudaaaaa!!!! disculpen las molestias, pero no se como hacer esto:
tengo una pagina donde hay que elegir dos fechas. hasta ahi bien, ahora el problema es el siguiente. en la bd tengo rangos de fechas por ejemplo.

id_fec fec1 fec2 precio
1 - 01-01-2012 01-02-2012 50
2 - 02-02-2012 10-02-2012 60

bueno ahora si yo elijo 2 fechas por ejemplo 20-01-2012 hasta el 05-02-2012- me tiene que calcular parte del precio primero y la otra parte del precio segundo. me explico??

muchas gracias!!!!
  #2 (permalink)  
Antiguo 27/06/2012, 07:17
Avatar de jamie_88  
Fecha de Ingreso: abril-2011
Ubicación: Lima
Mensajes: 161
Antigüedad: 13 años
Puntos: 28
Respuesta: fechas!!1

esos precios valen por el total de ese periodo? o es el precio por dia en ese periodo?

suponiendo que sea el precio por tal periodo, y que no sea necesario que la fecha conicida con el primer dia del periodo, quisas puedas hacer algo asi:

Código SQL:
Ver original
  1. SELECT SUM(precio) FROM tabla WHERE (fec1<=$fecha1 AND fec2>=$fecha1) OR (fec1<=$fecha2 AND fec2>=$fecha2)
  #3 (permalink)  
Antiguo 27/06/2012, 07:24
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 4 meses
Puntos: 20
Respuesta: fechas!!1

el precio es por día!!
  #4 (permalink)  
Antiguo 27/06/2012, 08:18
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 4 meses
Puntos: 20
Respuesta: fechas!!1

lo tendre que hacer con un for y consultando dia a dia en la bd?
  #5 (permalink)  
Antiguo 27/06/2012, 09:38
Avatar de jamie_88  
Fecha de Ingreso: abril-2011
Ubicación: Lima
Mensajes: 161
Antigüedad: 13 años
Puntos: 28
Respuesta: fechas!!1

Si es por dia podrias hacer algo asi:
  #6 (permalink)  
Antiguo 27/06/2012, 09:47
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 4 meses
Puntos: 20
Respuesta: fechas!!1

algo asi como?? con un for??
  #7 (permalink)  
Antiguo 27/06/2012, 10:11
Avatar de jamie_88  
Fecha de Ingreso: abril-2011
Ubicación: Lima
Mensajes: 161
Antigüedad: 13 años
Puntos: 28
Respuesta: fechas!!1

Cita:
Iniciado por jamie_88 Ver Mensaje
Si es por dia podrias hacer algo asi:
me habia venido a la mente la siguiente idea... pero queda el inconveniente que si la fecha esta en 3 o mas periodos...

la idea por si la fecha esta en dos periodos era la siguiente:

(aunque si no me quedo muy claro si los periodos pueden variar o son por cada mes)

Código MySQL:
Ver original
  1. SELECT precio, fec1, fec2 FROM tabla WHERE (fec1<=$fecha1 AND fec2>=$fecha1) OR (fec1<=$fecha2 AND fec2>=$fecha2) ORDER BY ASC

con esto deberias obtener el precio y hasta que fecha tiene ese precio
(siguiendo tu ejemplo inicial si pones si $fecha1 = 2012-01-20, te dara: precio = 50 y fec2 = 2012-02-01)

ahora si ves hay un ORDER BY ASC osea primero te dara la fec2 menor, asi que restas la primera fec2 menos $fecha1 y obtienes los dias del primer periodo, haces los mismo el segundo valor de $fecha2 menos fec1 y obtienes los dias del segundo periodo, ahora solo falta multiplicar los dias por el precio correspondiente y sumar...

seguramente hay tambien otras maneras... pero esta fue la que me vino a la mente...

Última edición por jamie_88; 27/06/2012 a las 11:19
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 18:15.