Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/03/2008, 11:29
theUniC
 
Fecha de Ingreso: abril-2004
Mensajes: 39
Antigüedad: 20 años
Puntos: 2
Re: Horario Semanal con BD y PHP

El planteamiento, para mí, seria que a partir de la fecha de hoy, reconstruir toda la semana, sabiendo que son siete dias (o cinco). Entonces en la base de datos guardaria la fecha y la hora en la que se produce el evento en segundos.

Por ejemplo

Código PHP:
// Granularidad (30 min). Baso todas las horas en segundos a partir de las 00:00
// con una granularidad de 30 minutos.
$granularidad 30 60;
$eventos = array(
    array(
        
'30300' => array('Hora con el médico'),
        
'34200' => array('Dar de comer al perro')
    ),
    array(
        
'77400' => array('Ir a cenar con la novia')
    )
);
$dias = array('Lunes''Martes''Miércoles''Jueves''Viernes''Sábado''Domingo');
$max_hora = ((23*3600) + (59 60));
echo 
"<table>";
echo 
"<thead>";
echo 
"<tr>";
foreach(
$dias as $nombre_dia) {
    echo 
"<th>" $nombre_dia "</th>";
}
echo 
"</tr>";
echo 
"</thead>";
echo 
"<tbody>";
echo 
"<tr>";
foreach(
$dias as $num_dia => $nombre_dia) {
    echo 
"<td>";
    echo 
"<dl>";
    
$hay_eventos sizeof($eventos[$num_dia]) > 0;
    for(
$i 0$i <= $max_hora$i += $granularidad) {
        echo 
"<dt>" mostrarHoraAPartirDeSegundos($i) , "</dt>";
        echo 
"<dd>";
        if(
$hay_eventos) {
            echo 
mostrarEventos($eventos[$num_dia], $i);
        }
        echo 
"</dd>";
    }
    echo 
"</dl>";
    echo 
"</td>";
    
$hay_eventos FALSE;
}
echo 
"</tr>";
echo 
"</tbody>";
echo 
"</table>"
Aviso que este código no está probado así que es posible que haya algun error, pero es básicamente para aclarar el concepto a mi modo de ver.

Saludos!
__________________
Caiman Systems - Diseño y programación de aplicaciones de gestión y páginas web

Última edición por theUniC; 29/03/2008 a las 11:38