Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/06/2017, 17:42
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Información entre dos fechas

Para lo tuyo lo más seguro es que

Código PHP:
Ver original
  1. $difference = date_diff(date_create($recogida), date_create($devolucion));

Te esté dando un número negativo aplica absoluto:

Código PHP:
Ver original
  1. $difference = abs($difference)

Me equivoqué en mi código, cambia:

Código PHP:
Ver original
  1. else if(entreFechas("$year-06-15","$year-03-15",$fecha) || entreFechas("$year-09-01","$year-12-15",$fecha)){

Por

Código PHP:
Ver original
  1. else if(entreFechas("$year-01-06","$year-03-15",$fecha) || entreFechas("$year-09-01","$year-12-15",$fecha)){

Y en el calculo también me equivoqué:

Código PHP:
Ver original
  1. $total = $precio_base+$suplemento[$temporada][0]+$suplemento[$temporada][$dias];

Por

Código PHP:
Ver original
  1. $total = $precio_base+$suplemento[$temporada][0]+$suplemento[$temporada][$dias]*$dias;

Te complicas mucho, no es necesario pedir dos fechas, simplemente pides al cliente la fecha de ingreso y númerio de días de estadía, punto. así te ahorras hacer bucles y validaciones.

Por otro lado, deja por defecto temporada media, y luego verificas temporada alta o baja, no es necesario hacer 3 verificaciones, digo lo de temporada media para no lidiar con ese cambio de año: Temporada MEDIA: 16 de Diciembre y 5 de Enero

Luego como explicas:

supl_tem_alta_1dia o supl_tem_alta_2dia o etc...

Entiendo pues que hay varianza pero no fórumla, por eso creé ese arreglo de suplementos.

Eso por ahora. Saludos.