Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/01/2009, 15:16
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 9 meses
Puntos: 2237
Respuesta: repetir un registro en base a una fecha delimitada.

No necesitas repetir el registro, solamente recuperarlo en las fechas y dias indicados.

Para esto, tal vez necesites crear un campo para cada dia de la semana o guardar los dias con algun tipo de codificacion, yo me inclino mas por la segunda opcion, ya que es mas facil comprobar con 1 solo campo. Ejemplo, puesto que los valores son de 0 (domingo) a 6 (sabado) puedes separarlos por comas.

"1,2,3,4" En esta cadena estan los numeros correspondientes para lunes a jueves.

Tu codigo PHP seria:
Código PHP:
// 1- Detecta la fecha actual y el dia de la semana
$hoy time();
$dia intval(date('w'$hoy));

// 2- Genera la fecha de comparacion de acuerdo al formato en que las guardas en tu base de datos
// Yo uso timestamp para las fechas y no se si esto sea suficiente:
$hoy_sql date('Y-m-d'$hoy);

// 3- Lee el menu del dia, obteniendo solo lo que este dentro de los rangos permitidos:
$query "SELECT FROM f.*, m.* FROM menu m, fechas f WHERE f.fech_inicio => $hoy_sql AND f.fech_termino <= $hoy_sql AND f.dias LIKE '%$dia%' AND m.id = f.id"
Edito: estoy suponiendo que usas dos tablas, de cualquier forma, solo adapta el codigo a tus necesidades.
__________________
- León, Guanajuato
- GV-Foto