37-Proceso detallado de reserva de habitación
Proceso detallado de reserva de habitación
📌 1. Contexto del sistema
Ya tenemos creadas las siguientes partes del sitio:
-
Página de inicio.
-
Página de habitaciones.
-
Página de reservas.
La página de reservas incluye:
-
Un banner interior (imagen de fondo).
-
Un módulo llamado info-reservas, que contiene:
-
Calendario para seleccionar fechas.
-
Botones para volver a ver habitaciones o ir al perfil del usuario.
-
Información del lado derecho como: código de reserva, fechas de ingreso/salida, tipo de habitación, plan elegido, etc.
-
Además, esta página reutiliza módulos del home como:
-
Planes
-
Recorridos
-
Restaurante
-
Testimonios
🧭 2. Flujos posibles del usuario para hacer una reserva
🔹 Opción 1: Usuario que ya sabe qué habitación desea
-
Desde la página de inicio, el usuario puede llenar el formulario con:
-
Tipo y temática de habitación.
-
Fecha de ingreso y salida.
-
-
Al hacer clic en "Ver disponibilidad", el sistema lo envía directamente a la página de reservas con esa información.
🔹 Opción 2: Usuario que quiere explorar antes de reservar
-
El usuario accede a la página de habitaciones.
-
Navega entre categorías y temáticas.
-
Selecciona una habitación y visualiza su información.
-
En el bloque inferior de la habitación hay un formulario donde:
-
Selecciona la fecha de ingreso y salida.
-
Se envía esta información al hacer clic en "Ver disponibilidad".
-
Se redirige a la página de reservas con los datos necesarios.
-
🧾 3. Datos mínimos requeridos para la reserva
Para que el sistema funcione correctamente, la página de reservas necesita recibir al menos:
-
id_habitacion: ID único de la habitación. -
fecha_ingreso: Fecha de entrada. -
fecha_salida: Fecha de salida.
Estos datos se envían mediante un formulario con el método POST, utilizando campos ocultos (input type="hidden") cuando sea necesario.
🧱 4. Estructura técnica del formulario (en página de habitación)
🔸 Estructura del <form>
Se reemplaza el enlace <a href="reservas"> por un formulario real que hace submit hacia la página de reservas.
🔧 Nota: El
id_habitacionse actualiza dinámicamente con JavaScript al navegar entre habitaciones.
🧠 5. JavaScript dinámico para cambiar el ID de la habitación
Cuando el usuario cambia de habitación, se actualiza el campo oculto del formulario para reflejar el nuevo id_habitacion.
Esto se hace tomando el ID de la habitación actual mostrada y asignándolo como value del campo oculto.
🧼 6. Validación y protección en la página de reservas
En la página reservas, específicamente dentro del módulo info-reservas, se coloca un bloque PHP para validar que los datos llegaron correctamente.
Esto evita que un usuario llegue directamente a la página de reservas sin haber llenado el formulario.
✅ 7. Resultado esperado
Una vez que el usuario llena correctamente el formulario y envía los datos:
-
Se redirige a la página de reservas.
-
Se muestran los datos enviados:
-
ID de la habitación.
-
Fecha de ingreso.
-
Fecha de salida.
-
-
A partir de aquí, el usuario puede elegir el plan, número de personas, y continuar el proceso de pago.
🔜 8. Próximo paso
En la siguiente clase, se trabajará el segundo formulario (el de la página de inicio) para completar la lógica del segundo flujo del usuario (el que ya sabe qué habitación quiere).
Comentarios
Publicar un comentario