80 Reportes de estudiantes inscritos por mes del Sistema de Gestión Escolar(PHP y MySql)FullStack
Duración: 15 min¡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 80: Reportes de estudiantes inscritos por mes del Sistema de Gestión Escolar (PHP y MySql) 🗓️
Esta lección se dedica a hacer funcional el segundo gráfico de reportes, que debe mostrar la cantidad de estudiantes inscritos por mes a lo largo del año, utilizando un gráfico de barras.
1. Preparación de la Lógica de Reporte por Meses ⚙️
El objetivo es extraer el mes de la fecha de creación del registro de cada estudiante para poder contarlos.
- Reutilización del Controlador: Para mantener el código ordenado y evitar crear nuevos archivos, se decidió reutilizar el controlador reporte_estudiantes.php creado en la lección anterior. La consulta SQL que trae todos los registros de estudiantes sigue siendo válida [01:29].
- Inicialización de Contadores: Se declararon 12 variables contadoras (una por cada mes, de enero a diciembre), todas inicializadas en cero [03:39].
2. Extracción y Conteo por Mes 🔢
Dentro del bucle foreach que itera sobre los estudiantes, se implementa la lógica para determinar el mes de inscripción de cada registro.
- Obtención de la Fecha: La variable $fecha extrae la columna f_h_creacion (fecha y hora de creación) del registro actual [05:45].
- Función strtotime y date: Se utilizan las funciones de PHP strtotime y date('m', ...) en conjunto para convertir la cadena de texto de la fecha en un formato que permita extraer únicamente el número de mes (01 para enero, 02 para febrero, etc.) [06:10].
PHP
$mes = date('m', strtotime($fecha));
- Lógica Condicional: Se utiliza una serie de sentencias if para comparar el valor del mes extraído ($mes) con los valores 01 a 12.
- Incremento: Al encontrar la coincidencia (ej. si $mes == '02'), se incrementa la variable contadora correspondiente (ej. $febrero++) [08:44].
3. Conexión de PHP con Chart.js 🔗
Finalmente, los 12 valores de los contadores mensuales se preparan para ser inyectados en el gráfico de barras.
- Concatenación: Se crea la variable $reporte_meses, que concatena los valores de las 12 variables contadoras mensuales, separadas por comas, para crear la cadena de datos requerida por Chart.js [11:29].
- Inyección de Datos: La variable $reporte_meses reemplaza los datos estáticos del dataset en el script de JavaScript asociado al gráfico de barras (miChart2) [13:03].
4. Verificación de Funcionamiento ✔️
- Prueba de Datos: Se demostró que, al modificar manualmente el mes de registro de algunos estudiantes directamente en la base de datos (por ejemplo, cambiando a Febrero), el gráfico refleja inmediatamente el cambio, mostrando los registros distribuidos por el mes correcto [07:38].
- Resultado Final: El gráfico de barras ahora muestra la distribución real de las inscripciones: 54 estudiantes en enero y 2 en febrero, confirmando que la funcionalidad es dinámica y correcta [13:17].
Conclusión: Con esto, ambos reportes principales (Estudiantes por Grado y Estudiantes Inscritos por Mes) son funcionales y obtienen sus datos en tiempo real de la base de datos. La siguiente lección se enfocará en añadir los últimos ajustes, posiblemente incluyendo más tipos de gráficos (como circulares) antes de cerrar el sistema.
Lecciones
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️