79 Reporte de estudiantes por grados del Sistema de Gestión Escolar(PHP y MySql)FullStack

Duración: 19 min
Módulo: 📤 Importación Masiva y Gráficos Lección 4 de 6

¡Contenido Exclusivo!

Adquiere este curso para tener acceso inmediato a esta y a **todas las lecciones Premium**.

Inscribirse Ahora por $20.00 Acceso instantáneo de por vida y código fuente incluido.

Descripción

LECCIÓN 79: Reporte de estudiantes por grados del Sistema de Gestión Escolar (PHP y MySql) 📈

Esta lección se enfoca en hacer funcional el primer reporte desarrollado en la Lección 78, conectando el gráfico de Chart.js con la base de datos para mostrar la cantidad real de estudiantes por grado en el sistema.

1. Creación del Controlador de Reportes ⚙️

Para obtener los datos de la base de datos de manera organizada, se creó un nuevo controlador.

  • Nuevo Archivo: Se crea el archivo estudiantes_por_grados.php dentro de la carpeta de controladores (app/controllers/reportes) [02:49].
  • Consulta a la Base de Datos: La lógica del controlador consiste en una consulta simple a la tabla estudiantes para obtener todos los registros activos (estado = 1) [04:13].

2. Lógica para el Conteo de Estudiantes por Grado 🔢

La información devuelta por el controlador se procesa en el index.php del módulo de Reportes para contar cuántos estudiantes pertenecen a cada uno de los 14 grados definidos.

A. Inicialización de Contadores

  • Se declaran 14 variables contadoras inicializadas en cero (ej. inicial_1, primaria_1, secundaria_1, etc.), una por cada grado académico existente en el sistema [09:57].

B. Iteración y Conteo

  • Se utiliza un bucle foreach para recorrer cada registro devuelto por el controlador [06:00].
  • Dentro del bucle, se usa una estructura if para verificar el grado_ID del estudiante [07:15].
  • Según el ID, se incrementa el contador de la variable correspondiente (ej. si grado_ID == 1, se incrementa inicial_1) [10:38].

C. Concatenación de Datos

  • Una vez finalizado el conteo, se crea una variable PHP ($datos_reporte_estudiantes) donde se concatenan los 14 valores de los contadores, separados por comas. Este formato es necesario para ser interpretado correctamente por la librería Chart.js [12:46].

3. Conexión de PHP con JavaScript (Chart.js) 🔗

El valor de la variable PHP concatenada se inyecta directamente en la sección de datos (data) del script de Chart.js.

  • Inyección de la Variable: La variable $datos_reporte_estudiantes reemplaza los datos ficticios en el dataset del gráfico de líneas [16:17].

4. Prueba y Demostración de Funcionamiento ✔️

  • Al recargar la vista, el gráfico muestra la cantidad real de estudiantes por grado. Por defecto, la mayoría de los estudiantes importados masivamente están en "Secundaria 1" [16:38].
  • Actualización Dinámica: Se realizó una prueba cambiando manualmente el grado de algunos estudiantes en el listado. Por ejemplo, se movió un estudiante a "Inicial 1" y dos a "Primaria 3" [17:19].
  • El gráfico se actualizó automáticamente tras los cambios, demostrando que el reporte ya funciona con datos vivos de la base de datos [17:58].

Conclusión: El primer gráfico de reportes es funcional y se actualiza en tiempo real, validando la lógica de la consulta SQL y la integración con Chart.js. El próximo capítulo se centrará en obtener la información por fechas para el segundo reporte.