He pensado este algoritmo, a ver que opináis:
Código PHP:
// El calendario es un array que contendrá la fecha para cada día del mes
$calendario = enero;
foreach($calendario as $dia){
$eventos = buscar_evento($dia);
foreach($eventos as $evento){
$dia->asistentes += $evento->asistentes;
}
}
La función buscar_eventos($dia) es una consulta mysql:
select * from EVENTOS when checkin <= $dia and checkout >= $dia
Mi único objetivo es conocer la suma total de asistentes de todos los eventos.
Ejemplo:
Evento 1
Fecha inicio: 28/02/14
Fecha fin: 02/03/14
Asistentes: 4
Evento 2:
Fecha inicio y fecha fin: 28/02/14
Asistentes: 3
Entonces el calendario mostraría:
Día 28/02 -> 3 + 4 = 7 asistentes
Día 01/03 -> 4 asistentes
Día 02/03 -> 4 asistentes
Es lo único que se me ocurre por ahora. ¿Me paso algo por alto? Todavía no lo he probado.
EDITO: Ya lo he implementado y a priori funciona bien.