Foros del Web » Programando para Internet » PHP »

Lógica: organizar registros por fechas

Estas en el tema de Lógica: organizar registros por fechas en el foro de PHP en Foros del Web. Buenas, voy a empezar con una página nueva, que será como una agenda cultural, que luego será integrada en otras webs. El caso es que, ...
  #1 (permalink)  
Antiguo 30/04/2008, 04:59
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Lógica: organizar registros por fechas

Buenas,

voy a empezar con una página nueva, que será como una agenda cultural, que luego será integrada en otras webs.

El caso es que, yo siempre he trabajado con timestamps (muy mal, si), y nunca jamás he usado un campo date en una base de datos.

Pues el tema de la agenda, es que me falta saber la lógica de cómo ordenar los eventos (o registros) por fechas. No de mayor o menos o algo así, si no que, por ejemplo, pueden haber eventos que sean de unas horas, y otros que sean de varios días durante unas horas al día, u otros que sean solo determinados días de la semana. Mi duda es, como ordenar ésto.

La verdad es que llevo tiempo dándole vueltas (no he probado nada) por la cabeza, pero no se me ocurre nada, y, seguramente sea porque jamás he usado un campo dato (luego me podeis azotar ).

Si alguien pudiera orientarme un poquito se lo agradecería.

Un saludo y gracias.
  #2 (permalink)  
Antiguo 30/04/2008, 05:25
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 20 años
Puntos: 48
Re: Lógica: organizar registros por fechas

Papel y lapiz, plasma como quieres mostrar los datos, pon varios eventos de varios tipos y

Por ejemplo, como lista de dias dentro de las cuales se ordenan por horas (hora de comienzo):

30 de abril
- Jornadas X dia 1 (9:00 a 22:00)
- Presentacion Y (10:30 a 12:00)
- Kedada Z (19:00 a 23:30)

1 de mayo
- Desayuno J (8:30 a 9:00)
- Jornadas X dia 2 (9:30)

...

De esta forma tambien puedes ver mas datos que puedes necesitar. Por ejemplo, las Jornadas X no empiezan a la misma hora todos los dias, asi que quizas deberias separar los datos generales de los "eventos" (nombre, lugar, organizador) de lo que son los "dias" (fecha, hora comienzo, hora fin, id_evento).

Asi que lo que tendrias que haces es ordenar esa tabla "dias" por fecha y hora comienzo ascendente. Si un dia no hay ningun evento, no habra en esa tabla ningun registro con esa fecha.

Esa consulta tambien la puedes acutar a un intervalo (fecha>='2008-04-28' AND fecha<='2008-05-04') o para un dia concreto (fecha='2008-04-30').
  #3 (permalink)  
Antiguo 30/04/2008, 06:12
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Re: Lógica: organizar registros por fechas

Gracias por la respuesta.

Lo simple creo que es justo eso, mostrar los eventos un día puntual. El problema, es que un registro se muestre en una lista de 30 días las veces que se realice el evento.

¿Con qué datos guardo un evento que se haga durante varios días seguidos?
¿Cómo guardo un evento que se haga los martes y jueves un mes concreto?
¿Y un evento que se haga los días 3, 8, 12 y 21 de mayo, a diferentes horas cada día?

Lo más habitual en un agenda cultural (hablamos de conciertos, exposiciones presentaciones de libro, etc.) es que, o bien se hagan varios días seguidos a la misma hora o un día nada mas. Creo que hasta aquí no hay problema alguno, porque con poner el día de inicio y fin es suficiente.
El problema, de planteamiento, es el de los eventos con dos o tres días fijos al mes, y días concretos con diferente hora, etc... Eventos "salteados" por decirlo de alguna forma.

La única solución que se me ocurre a mi es, si un evento se hace en cuatro días distintos y a diferente hora y demás, crear cuatro registros diferentes. Pero ésto choca con la comodidad, y creo que sería un poco chapucero.

Un ejemplo muy claro, es Google Calendar. Organiza todo de la forma que uno quiera, y con eventos "salteados" como dije antes.

  #4 (permalink)  
Antiguo 30/04/2008, 10:07
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Re: Lógica: organizar registros por fechas

Épale... Que suba que estaba perdidito el tema.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:38.