Se han de realizar varias modificaciones en la librería calendario para permitir seleccionar una fecha. Empezamos con las modificaciones para convertir los días en enlaces.
Seguimos trabajando con este script que se muestra cómo realizar paso a paso en el manual del calendario PHP. En capítulos anteriores comenzamos unas modificaciones para que se pueda utilizar este calendario para seleccionar una fecha, que estamos continuando en el presente texto.
1) Los días son enlaces
Para que los días del calendario se puedan pulsar se han convertido en enlaces. El código asociado con esta funcionalidad es el siguiente:
echo "<td align=center><a href='javascript:devuelveFecha($dia_actual,$mes,$ano)'". dame_estilo($dia_actual) .">$dia_actual</a></td>";
Con los atributos href de los enlaces href=javascript:sentencia... se ejecuta una sentencia Javascript. En este caso, nuestra sentencia es la llamada a la función que se encarga de copiar la fecha pulsada en el formulario de origen, pasándole los valores que debe copiar, es decir, día, mes y año de la fecha seleccionada.
Hay tres modificaciones que se deben realizar al calendario que hemos visto hasta ahora, encaminadas a realizar tres acciones bien definidas.
- Todos los días del calendario deberán ser enlaces para que se puedan pulsar, lo que significará que se ha seleccionado ese día concreto.
- Habrá que crear una función Javascript para, una vez seleccionada una fecha, actualizar el valor del campo de texto indicado y cerrar la ventana del calendario.
- El calendario puede llamarse a si mismo para mostrar un mes y/o año distinto. En esas llamadas es muy importante que se pasen los datos del nombre del formulario y el campo de texto para que el calendario los recuerde a fin de utilizarlos cuando se seleccione una fecha concreta.
- También hemos ampliado la inteligencia del calendario para que coloree sus días. Los domingos en rojo, el día actual en azul y los demás en negro.
1) Los días son enlaces
Para que los días del calendario se puedan pulsar se han convertido en enlaces. El código asociado con esta funcionalidad es el siguiente:
echo "<td align=center><a href='javascript:devuelveFecha($dia_actual,$mes,$ano)'". dame_estilo($dia_actual) .">$dia_actual</a></td>";
Con los atributos href de los enlaces href=javascript:sentencia... se ejecuta una sentencia Javascript. En este caso, nuestra sentencia es la llamada a la función que se encarga de copiar la fecha pulsada en el formulario de origen, pasándole los valores que debe copiar, es decir, día, mes y año de la fecha seleccionada.
Miguel Angel Alvarez
Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...