Ver Mensaje Individual
  #32 (permalink)  
Antiguo 10/08/2012, 12:07
Avatar de kimmy
kimmy
 
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Verificar fechas para hacer calculos

Amigos por fin lo entendi y funciona!!!. Aunque no se si está del todo correcto. Lo puse asi:

Código PHP:
Ver original
  1. $desde = '2012-08-10';
  2. $hasta = '2012-08-14';
  3.  
  4. $fechas = array();
  5.  
  6. // Lo más fácil es hacer un ciclo for, pero necesitamos que sea numérico
  7. $inicio = strtotime($desde);
  8. $fin = strtotime($hasta);
  9.  
  10. // Un dia es 86400 segundos
  11. for($i = $inicio; $i <= $fin; $i += 86400) {
  12.     // Convertimos el número a fecha
  13.     $ifecha = date('m-d', $i);
  14.    // Inicialmente suponemos que no es temporada alta (false)
  15.     $fechas[$ifecha] = false;
  16. }    
  17.     $rs2 = mysql_query("SELECT * FROM detalle_temp_alta WHERE id_posada='8' AND fecha_temp_alta BETWEEN '$desde2' AND '$hasta2'");
  18.     // Después, verificas los resultados de tu consulta (con BETWEEN)
  19.     while($row = mysql_fetch_array($rs2)) {
  20.         // Simplemente marcas la fecha como temporada alta (true)
  21.         $fechas[$row['fecha_temp_alta']] = true;
  22.         //$fecha = $row['fecha_temp_alta'];
  23. }
  24.      
  25.    // Para comparar
  26. for($i = $inicio; $i <= $fin; $i += 86400) {
  27.      $ifecha = date('m-d', $i);
  28.     if($fechas[$ifecha]) {
  29.         echo 'Es temporada alta <br>';
  30.     } else {
  31.         echo 'No es temporada alta <br>';
  32.     }
  33. }

Ahora lo que me falta es saber como almacenar cuantos 'Es temporada alta' y 'No es temporada alta' para multiplicarlos por los precios de alta y baja.

Muchisisisisimas gracias Triby por todo: por la excelente enseñanza, por la gran paciencia....

Muchas Gracias Carlos por tus valiosos aportes (espero usar esa función cuando migre mi php a 5.3)

Gracias mogurbon por darme animo.

__________________
Caminando con el corazón partío