Este Sistema de Reserva de Boletos de Viaje en Línea en PHP y MySQL, le permite al usuario, visualizar y reservar los viajes en bus disponibles, de manera muy sencilla e intuitiva.
La aplicación en su página inicial tiene un botón de reservas donde con solo pulsarlo, aparecerá una ventana donde seleccionar origen, destino y fecha del viaje.
Cuando realizas este proceso en el sistema, si no hay ningún viaje que coincida con el criterio de búsqueda, te va a aparecer una ventana que indica que no hay datos.
En adición al pulsar en el enlace de Reservar, te van a aparecer los viajes que están disponibles para que realices tu reserva, sencillamente.
Video Explicativo
Ambiente Administrativo del Sistema de Reserva de Boletos de Viaje en Línea
Para acceder al ambiente administrativo, se ingresa en el apartado admin.php, el sistema te va a pedir que ingrese tus credenciales de acceso, como es habitual el usuario administrativo es configuroweb y la contraseña es 1234abcd..
Desde el apartado administrativo, el usuario ya logueado podrá gestionar los horarios de los viajes, podrá ingresar los buses que harán los viajes, podrá visualizar las reservas que los usuarios finales realizan desde el portal, generar nuevas ubicaciones de origen y destino, para que luego aparezcan disponibles para el usuario final.
Sistemas de Reserva Disponibles
Además de este Sistema de Reserva de Boletos, recientemente publiqué un Sistema de Venta de Pasajes en PHP y MySQL la gran diferencia consiste en que este último no está pensado para que el usuario final haga reservas desde internet, sino para un proceso de registro y control interno, donde el usuario va directamente a la agencia y realiza el proceso con la asistencia de un usuario administrativo.
En este blog donde se han publicado más de 150 aplicaciones, ya se han subido varios sistemas de Reserva que por sus características específicas te podrían servir y son los siguientes:
Sistema de Reserva de Salas en PHP y MySQL
Transforma tu Peluquería con el Sistema de Gestión de Peluquerías Optimizado
Sistema de Gestión de Citas Avanzado en vue.js PHP y MySQL
Sistema de Citas para Veterinaria en PHP y MySQL
Sistema de Gestión Hotelera en PHP y MySQL
Sistema de Laboratorio de Diagnóstico en Línea en PHP y MySQL
Demo del Sistema de Reserva de Boletos en Línea
Para acceder al apartado en el que el usuario final realiza su reserva, puedes ingresar en el siguiente enlace:
https://demoscweb.com/reserva-bus/index.php
El apartado administrativo del Sistema de Reserva de Boletos de Viaje en Línea en PHP y MySQL se encuentra en el siguiente enlace para que realices las pruebas pertinentes:
https://demoscweb.com/reserva-bus/admin.php
Medida de Seguridad Aplicadas al Sistema de Reserva de Boletos de Viaje Online
Dado que el principal objetivo de el desarrollo de estas aplicaciones es que puedan ser utilizadas en productivo y que sean competitivas, seguras y confiables para que estén en línea sin inconvenientes de posibles ataques de todos los que puede sufrir una aplicación en línea.
Aprovechando esta mínima introducción, les informo que las medidas de seguridad aplicadas para este software fueron las siguientes:
- Prevención de Inyección SQL:
- Uso de declaraciones preparadas en todas las consultas a la base de datos para prevenir ataques de inyección SQL.
- Protección contra Cross-Site Scripting (XSS):
- Implementación de la función
sanitize_input()
para limpiar y escapar datos de entrada del usuario. - Uso de
htmlspecialchars()
al mostrar datos en el navegador.
- Implementación de la función
- Seguridad de Contraseñas:
- Uso de
password_hash()
para el hashing seguro de contraseñas antes de almacenarlas en la base de datos. - Uso de
password_verify()
para verificar las contraseñas durante el inicio de sesión.
- Uso de
- Protección contra Cross-Site Request Forgery (CSRF):
- Implementación de tokens CSRF en formularios y solicitudes AJAX.
- Verificación de tokens CSRF en el servidor antes de procesar solicitudes.
- Manejo Seguro de Sesiones:
- Inicio seguro de sesiones con
session_start()
. - Almacenamiento seguro de información de usuario en variables de sesión.
- Inicio seguro de sesiones con
- Limitación de Intentos de Inicio de Sesión:
- Implementación de un sistema para limitar los intentos de inicio de sesión fallidos.
- Protección de Usuarios Especiales:
- Implementación de lógica para prevenir la modificación del usuario administrador (ID 1).
- Seguridad en la Transmisión de Datos:
- Uso de HTTPS recomendado para cifrar la comunicación entre el cliente y el servidor.
- Validación de Entrada:
- Validación de datos de entrada tanto en el cliente (JavaScript) como en el servidor (PHP).
- Control de Acceso:
- Implementación de controles de acceso basados en roles de usuario.
- Verificación de autenticación antes de permitir acciones sensibles.
- Manejo Seguro de Errores:
- Configuración para no mostrar errores detallados a los usuarios finales en producción.
- Registro de errores para revisión por parte de los administradores.
- Prevención de Enumeración de Usuarios:
- Mensajes de error genéricos para inicio de sesión fallido para no revelar la existencia de usuarios.
- Seguridad en la Base de Datos:
- Uso de privilegios mínimos necesarios para la conexión a la base de datos.
- Headers de Seguridad:
- Recomendación de implementar headers de seguridad como X-Frame-Options, X-XSS-Protection, etc.
- Protección contra Clickjacking:
- Uso de la política de mismo origen y headers adecuados para prevenir ataques de clickjacking.
- Seguridad en el Lado del Cliente:
- Implementación de validaciones JavaScript para mejorar la experiencia del usuario y proporcionar una primera capa de seguridad.
Estas medidas de seguridad trabajan en conjunto para proteger el sistema contra una variedad de amenazas comunes. Sin embargo, es importante recordar que la seguridad es un proceso continuo y se recomienda realizar auditorías de seguridad regulares y mantenerse actualizado con las últimas prácticas de seguridad.
Compra de la Aplicación
Para que la aplicación te funcione tanto en un servidor local como en un hosting, requeriras el archivo SQL que contiene la base de datos, las tablas y la lógica que se requiere para el login y se puedan gestionar los boletos, este sistema tiene un costo de 20 USD y lo puedes comprar por medio del siguiente enlace:
Pago vía Global66
Países válidos Argentina, Chile, Colombia, México y Perú.
Pago vía Mercado Pago
Países válidos Argentina, Brasil, Chile, Colombia, México, Perú y Uruaguay.
link.mercadopago.com.co/configuroweb
Pago por Binance
También me puedes hacer el pago de los 20 USD por medio de Binance con USDT a mi cuenta de Binance:
msevillab@gmail.com
Pago vía Western Union
Favor contactarme vía whatsapp para más información en el siguiente enlace:
Otros medios de pago
Si resides en Colombia me puedes hacer el pago por Nequi, por un enlace PSE de Uala o desde fuera por Western Union, cualquier duda me puedes escribir a mi Whatsapp.
Pago por Nequi
Enlace PSE UALA en pesos colombianos
Aprovisionamiento del Sistema
Video Explicativo a nivel general para instalación de aplicaciones PHP
En el video a continuación se muestra el proceso a nivel general:
Antes de cualquier cosa, si llegaste hasta acá excelente y si necesitas cualquier otra aplicación puede que la tenga en mi listado de más de 80 aplicaciones de libre descarga, en el siguiente enlace puedes verlas:
En adición tengo aplicaciones más elaboradas que te podrían servir y que puedes conocer en el siguiente enlace:
Instalación de las aplicaciones necesarias para la puesta a punto del Sistema
Para la puesta a punto del Sistema debes instalar en principio los siguientes software:
XAMPP que te implementa todo lo necesario para un servidor web a nivel local y puedes descarcargar en el siguiente enlace:
https://www.apachefriends.org/es/download.html
Git que es un gestor de repositorios con el que haremos la descarga de la aplicación de mi perfil de GitHub, Git lo puedes descargar en el siguiente enlace:
Visual Studio Code que es un editor de código sencillo, completo, dinámico, inmensamente popular y lleno de todo tipo de plugins que se pueden instalar según infinidad de necesidades que llegues a requerir, en el siguiente enlace puedes descargar la aplicación:
https://code.visualstudio.com/download
Descarga del Sistema
Yo te comparto la carpeta del sistema completo, tanto el software como la base de datos relacionada, cuando te haga el envío la podrás descargar y utilizar sin inconvenientes, si tienes XAMPP instalado y extraes los scripts dentro de la carpeta htdocs, solo te faltará importar la base de datos para que el sistema te funcione.
Descarga e instalación de las aplicaciones necesarias para el funcionamiento del sistema
Debes instalar las aplicaciones que había mencionado al principio XAMPP, Visual Studio Code y Git, te recomiendo que estas aplicaciones las instales con todos los parámetros por defecto, para que las opciones sean iguales a las descritas en el presente tutorial.
PASO 1 ABRE XAMPP
Lo primero que debes hacer es abrir XAMPP desde la tecla Windows y luego XAMPP, posterior a esto te aparecerá una consola como la de la siguiente captura:
PASO 2 ACTIVA LOS SERVICIOS DE APACHE Y MYSQL
Debes activar el servicio de Apache y MySQL, para poder corre archivos con las extensión php y trabajar con un gestor de base de datos como phpmyadmin. En la captura anterior se muestra la consola de XAMPP con los servicios ya activados.
PASO 3 ACCEDE A LA UBICACIÓN DE LOS ARCHIVOS
C:\xampp\htdocs
Dentro de la carpeta htdocs ingresa la carpeta de los archivos que te proporciono.
PASO 7 CONFIGURACIÓN DE LA BASE DE DATOS
Para la implementación de la base de datos en el gestor de phpmyadmin debes primero adquirirla, comprandola desde los medios de pago que están más adelante y luego contáctandome a mi Whatsapp para que te la provea.
Para la configuración debes acceder a la siguiente URL:
http://localhost/phpmyadmin/
Creas la base de datos con el nombre:
reserva-bus
Pulsas en la opción que dice importar, buscas el archivo SQL que te proveo, presionas continuar y de este modo ya estará la aplicación plenamente operativa para su uso.
PASO 4 CONSIDERACIONES IMPORTANTES
Debes editar los archivos a continuación:
Las credenciales de la base de datos, deben ser incluidas en el archivo db_connect.php
Si vas a subir la aplicación a un hosting, debes poner el usuario de la base de datos, el nombre de la base de datos y su contraseña, ya que los parámetros que están definidos por defecto son los de XAMPP.
PASO 5 ACCEDE A LA URL DE LA APLICACIÓN
Ya para este punto la aplicación estará lista para su uso en la siguiente URL:
http://localhost/reserva-bus/index.php