Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AccesWaze

Proyecto académico · Completado · Sin mantenimiento activo

Demo universitaria para registrar y consultar barreras de accesibilidad urbana en un mapa. El repositorio se llama Access; la aplicación conserva AccesWaze. Se mantiene para exhibición y aprendizaje, sin expectativa de producción.

Qué hace

  • Consulta pública de reportes en mapa y tarjetas, con filtros por categoría.
  • Registro e inicio de sesión, con perfil de accesibilidad asociado a la cuenta.
  • Creación de reportes con ubicación elegida en el mapa y foto opcional.
  • Comentarios y calificaciones de 1 a 5; una calificación por usuario y reporte.
  • Panel de administrador con estadísticas, cambio de estados y eliminación de reportes.
  • Ajustes de tamaño de texto, contraste y reducción de animaciones guardados en el navegador.

Los ejemplos se sitúan en Bogotá. No calcula rutas accesibles: el buscador de direcciones es un campo visual sin lógica conectada y el perfil no personaliza rutas. Las estadísticas se consultan mediante peticiones HTTP; no se actualizan continuamente en tiempo real. Algunos textos de la interfaz conservan aspiraciones del ejercicio, como rutas personalizadas y gestión de usuarios, que no están implementadas.

Stack y estructura

HTML, CSS y JavaScript sin framework; Leaflet 1.9.4 con teselas de OpenStreetMap; PHP con PDO y sesiones; MySQL/MariaDB. Fuentes Outfit y JetBrains Mono de Google Fonts. Sin npm, Composer ni paso de compilación.

Access/
├── index.html          # Vistas y formularios
├── css/styles.css      # Presentación
├── js/app.js           # Navegación, mapa y peticiones a PHP
├── php/config.php      # Conexión PDO, sesiones y respuestas JSON
├── php/auth.php        # Registro, login, logout y consulta de sesión
├── php/reportes.php    # Reportes, comentarios, calificaciones y estadísticas
├── assets/uploads/     # Imágenes generadas al usar la demo
├── database.sql        # Esquema y ejemplos; recrea tablas
└── docs/LIMITACIONES.md

El navegador consulta php/*.php?action=.... PHP guarda usuarios, reportes, comentarios y calificaciones en cuatro tablas relacionadas. Las imágenes quedan en disco y la base guarda su ruta. Solo las preferencias visuales usan localStorage.

Ejecutar localmente con XAMPP

Requisitos

  • PHP 8.1 o posterior, con pdo_mysql y mbstring habilitados. El mínimo se debe al tipo de retorno never en config.php.
  • Apache y MySQL/MariaDB, por ejemplo los incluidos en XAMPP.
  • Internet para Leaflet, teselas y fuentes externas. La demo no es offline.

Preparación

  1. Copia esta carpeta en C:\xampp\htdocs\Access.
  2. Inicia Apache y MySQL desde el panel de XAMPP.
  3. Antes de importar, comprueba que puedes descartar el contenido de accesWaze: database.sql elimina y recrea sus cuatro tablas. No lo importes sobre datos que quieras conservar. Usa una instalación local de prueba sin datos personales.
  4. Abre phpMyAdmin local, selecciona Importar y carga database.sql. El script selecciona expresamente accesWaze mediante USE; elegir otra base en phpMyAdmin no redirige la importación.
  5. Revisa DB_HOST, DB_PORT, DB_USER, DB_PASS y DB_NAME en php/config.php. Los valores iniciales corresponden a una instalación local de ejercicio. No incluyas credenciales reales en commits.
  6. Asegura permiso de escritura para Apache en assets/uploads/. Para fotos de hasta 5 MiB, revisa también upload_max_filesize y post_max_size en el php.ini de Apache; el segundo debe admitir el formulario completo. Reinicia Apache después de cambiar su configuración.
  7. Abre AccesWaze local. Si elegiste otro nombre de carpeta, adapta la URL. Abrir el HTML con doble clic o un servidor solo estático no ejecuta PHP.

Datos de demostración

El SQL incluye tres cuentas ficticias (un administrador y dos usuarios) y cinco reportes. Los correos, roles y contraseña de ejemplo están en el bloque Datos de ejemplo de database.sql. La contraseña es compartida solo para el ejercicio; no uses datos o contraseñas personales.

Los hashes del archivo se corrigieron para corresponder a la contraseña indicada. Esto no modifica instalaciones existentes: no reimportes una base con trabajo guardado solo para aplicar esa corrección.

Recorrido de exhibición y capturas

  1. Mostrar mapa y filtros con los reportes ficticios de Bogotá.
  2. Abrir un detalle con comentarios y calificación.
  3. Mostrar el formulario de reporte y selección de ubicación.
  4. Mostrar el panel de administrador y ajustes de contraste/tamaño.

Estas son las capturas que conviene añadir al README cuando se ejecute la demo completa. Aún no se incluyen capturas verificadas de esta revisión.

Estado y limitaciones

Se conservó el diseño y la funcionalidad del ejercicio. La búsqueda de direcciones, el cálculo de rutas y la administración de usuarios no se implementaron en esta limpieza. Los ajustes visuales no equivalen a una certificación de accesibilidad.

Hay deuda importante en subida de archivos, CSRF, métodos mutables, escape HTML y errores. Está descrita con referencias al código en Limitaciones y deuda técnica. El alcance es una demo local de exhibición, sin despliegue público previsto.

Verificación de esta revisión: sintaxis PHP/JS y correspondencia de hashes demo. No se importó el SQL ni se certificaron los flujos completos con base de datos.

Problemas frecuentes

  • No conecta a la base: revisa MySQL, pdo_mysql, credenciales y nombre de la base. No compartas detalles de errores con datos sensibles.
  • Error relacionado con never o mb_strlen: comprueba versión y extensiones del PHP de Apache, que puede diferir del PHP de consola.
  • Mapa o carga inicial fallan: comprueba acceso a unpkg y OpenStreetMap. El arranque depende de Leaflet.
  • La foto no aparece: comprueba permisos y límites PHP. Algunos errores de subida pueden terminar creando un reporte sin imagen.
  • El buscador no responde: es una limitación conocida, no un problema de instalación.

About

Demo académica para registrar, consultar y visualizar barreras de accesibilidad urbana en Bogotá.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages