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

Ve como andas con esto, eso sí no lo probé, pero está libre de errores de sintáxis y eso... lo hice un poco a la rápida, pero espero que se entienda la idea:

Código PHP:
Ver original
  1. <?php
  2.  
  3. //================ Config ================//
  4.  
  5. //---- Suplementos-----//
  6. $suplemento = array(
  7. array( //config temp. baja
  8. 1000, //suplemento
  9. 900, //dias: 1
  10. 800, //dias: 2
  11. 700, //dias: 3
  12. 600, //dias: 4
  13. 500, //dias: 5
  14. 400 //dias: 6
  15. ),
  16. array( //config temp. media
  17. 2000, //suplemento
  18. 900, //dias: 1
  19. 800, //dias: 2
  20. 700, //dias: 3
  21. 600, //dias: 4
  22. 500, //dias: 5
  23. 400 //dias: 6
  24. ),
  25. array( // config, temp. alta
  26. 3000, //suplemento
  27. 900, //dias: 1
  28. 800, //dias: 2
  29. 700, //dias: 3
  30. 600, //dias: 4
  31. 500, //dias: 5
  32. 400 //dias: 6
  33. )
  34. );
  35. //-----End suplementos-----//
  36.  
  37. $precio_base = 7000; //precio base
  38.  
  39. $fecha = $_POST["fecha"]; // ve como arreglas tu post de fecha
  40. $dias = $_POST["dias"]; // ve como arreglas tu post de dias
  41.  
  42. //================ End Config ================//
  43.  
  44. function entreFechas($inicio, $fin, $fecha){
  45.     if(strtotime($fecha) >= strtotime($inicio) && strtotime($fecha) <= strtotime($fin)){ return true; }
  46. return false;
  47. }
  48.  
  49. $dias = intval($dias);
  50. $year = intval(explode("-",$fecha)[0]);
  51. $temporada = 1;
  52.  
  53. if(entreFechas("$year-07-01","$year-10-31",$fecha)){
  54. $temporada = 2;
  55. }
  56. else if(entreFechas("$year-06-15","$year-03-15",$fecha) || entreFechas("$year-09-01","$year-12-15",$fecha)){
  57. $temporada = 0;
  58. }
  59.  
  60. $total = $precio_base+$suplemento[$temporada][0]+$suplemento[$temporada][$dias];
  61.  
  62. echo $total;
  63.  
  64. ?>

Saludos.