
Una aplicación que es muy recurrente en Internet es el desarrollo de una aplicación para la administración de Recursos Humanos. Esta aplicación nos sirve para utilizar lenguajes del lado del cliente, como JavaScript y lenguajes del lado del servidor como PHP, así como conectarlo con bases de datos, en este caso como MySQL, herramientas que son las más utilizadas en la Web. En este curso construiremos las páginas web por medio de Bootstrap 5.3. lo cual nos permitirá tener una aplicación responsiva.
Partiremos desde una página completamente en blanco hasta concluir la parte del usuario (front-end) y la parte del administrador (back-end). Los objetivos del presente curso son:
Conocer los aspectos básicos de PHP y su instalación.
Crear la estructura Modelo, Vista y Controlador para construir la tienda virtual con PHP y MySQL.
Crear el controlador, el modelo y las vistas necesarias para permitir el acceso de los usuarios al sistema.
Crear el menú, controlador, modelo y las vistas necesarias para: el tablero, las cuentas, los movimientos.
Manejo de imágenes y paginación de consultas muy largas
Este curso intermedio, por lo que usted debe tener las bases de programación en Bootstrap, PHP, JavaScript y MySQL, aunque no debe de ser experto en ellos. Es una buena oportunidad para poner en práctica sus conocimientos. Usted debe de contar con una instalación de Apache-PHP-MySQL, como XAMPP, MAMP o WAMP.
Al final del curso contarás con todos los archivos del mismo y los esquemas de la base de datos.
Una aplicación que es muy recurrente en Internet es el desarrollo de una aplicación para la administración de Recursos Humanos. Esta aplicación nos sirve para utilizar lenguajes del lado del cliente, como JavaScript y lenguajes del lado del servidor como PHP, así como conectarlo con bases de datos, en este caso como MySQL, herramientas que son las más utilizadas en la Web. En este curso construiremos las páginas web por medio de Bootstrap 5.3. lo cual nos permitirá tener una aplicación responsiva.
Partiremos desde una página completamente en blanco hasta concluir la parte del usuario (front-end) y la parte del administrador (back-end). Los objetivos del presente curso son:
Conocer los aspectos básicos de PHP y su instalación.
Crear la estructura Modelo, Vista y Controlador para construir la tienda virtual con PHP y MySQL.
Crear el controlador, el modelo y las vistas necesarias para permitir el acceso de los usuarios al sistema.
Crear el menú, controlador, modelo y las vistas necesarias para: el tablero, las cuentas, los movimientos.
Manejo de imágenes y paginación de consultas muy largas
Este curso intermedio, por lo que usted debe tener las bases de programación en Bootstrap, PHP, JavaScript y MySQL, aunque no debe de ser experto en ellos. Es una buena oportunidad para poner en práctica sus conocimientos. Usted debe de contar con una instalación de Apache-PHP-MySQL, como XAMPP, MAMP o WAMP.
Al final del curso contarás con todos los archivos del mismo y los esquemas de la base de datos.
Para el un curso de PHP, MySQL y Bootstrap necesitas una computadora con internet, un servidor local como XAMPP (que incluye PHP y MySQL), un editor de código como VS Code y nociones básicas previas de HTML y CSS.
XAMPP es un paquete de software libre que te permite crear un servidor web en tu propia computadora de forma rápida y gratuita. Es la herramienta principal para que programadores y estudiantes prueben sitios web o aplicaciones dinámicas de forma local, sin necesidad de tener acceso a internet.
El patrón de diseño (de software) MVC se encarga de separar la “lógica de negocio” de la “interfaz de usuario” y es el más utilizado en aplicaciones web, ya que facilita la funcionalidad, mantenibilidad y escalabilidad del sistema.
En esta clase utilizaremos las carpetas:
app
controladores
libs
modelos
sql
vistas
public
css
js
img
fotos
usuarios
empleados
puestos
competencias
cursos
planescapacitacion
capacitacion
calificaciones
asistencias
evaluaciones
departamentos
extension=php_pdo.dll
extension=php_pdo_firebird.dll
extension=php_pdo_informix.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_oci8.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
El archivo .htaccess nos permite modificar el acceso, en un ambiente Apache, a directorios o archivos.
Para que no puedan entrar a un directorio desde la URL y no ver el mismo se utiliza (en app):
MVC divide las aplicaciones en tres niveles de abstracción:
El método separarURL() toma la URL del sistema y lo separará.
Utilizaremos las funciones:
isset() valida si una variable está definida.
rtrim() limpia caracteres a la derecha.
filter_var(FILTER_SANITIZE_URL) limpia los caracteres ilegales en una URL.
explode() separa una cadena por medio de una cadena delimitadora.
Dentro del constructor llamaremos el controlador y el método solicitado desde los parámetros. Utilizaremos las funciones:
file_exists() verifica que exista el archivo físico.
ucwords() cambia a mayúscula las primeras letras.
unset() elimina una variable.
En todos los controladores necesitaremos dos métodos: Uno para llamar a las vistas con los datos a desplegar y otro para generar el modelo.
Nos conviene generar una clase auxiliar (que no se ejecuta directamente) con ambos métodos.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comentario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
El proceso de entrada o login es un procedimiento de seguridad que permite a un usuario autenticarse para acceder a un sistema, aplicación o servicio en línea, generalmente utilizando un nombre de usuario y una contraseña, y a menudo complementado con autenticación multifactor (MFA) para mayor seguridad.
Bootstrap 5.3, la versión actual de Bootstrap, es muy bien considerada por la comunidad de desarrolladores web.
Se destaca por su facilidad de uso, su amplia compatibilidad y su extensa documentación, lo que lo convierte en una herramienta muy valiosa tanto para principiantes como para desarrolladores experimentados.
form-group
text-start
form-control
btn
btn-info
Dividiremos la vista en un encabezado y en un pie de página para utilizarlos en las diferentes vistas.
A medida que avanzamos en las llamadas de los métodos, la ruta relativa se puede ir perdiendo, por lo que la mantendremos en una Constante global.
define()
filter_var() en PHP es una función esencial para validar y sanear datos, como emails, URLs, números e IPs, asegurando que sean seguros y cumplan con un formato específico, protegiendo tu aplicación de datos maliciosos o incorrectos.
Un proceso de validación muy importante es que busquemos en la base de datos el correo electrónico antes de enviar el correo.
Por medio de la instrucción mail() enviaremos el correo electrónico al usuario.
@mail($correo,$asunto,$msg, $headers);
Realizaremos la función para desplegar el arreglo de errores dentro de la vista.
Podemos crear una vista general donde podemos enviar diferentes mensajes erróneos o de aceptación.
Es muy importante saber a donde regresar después de la vista.
Base64 es un sistema de codificación que convierte datos binarios (imágenes, PDFs, ejecutables) en una cadena de caracteres ASCII seguros (letras A-Z, a-z, 0-9, +, /). Se utiliza para transmitir o almacenar información binaria en medios que solo gestionan texto, como correos electrónicos (MIME) o archivos XML/JSON, garantizando que los datos no se corrompan.
Necesitamos crear el método y la vista para cambiar la clave de acceso.
hash_hmac(“sha512”,clave,”llave encriptacion”); Genera una cadena cifrada por el método HMAC.
hash_hmac(“sha512”,$clave,”llave encriptacion”); Genera una cadena cifrada por el método HMAC.
Una vez que tenemos la clave de acceso encriptada, la compararemos con la correspondiente en la base de datos.
hash_hmac(“sha512”,$clave,”llave encriptacion”);
Genera una cadena cifrada por el método HMAC.
session_start(array $options = []): bool
$_SESSION[ ]
session_destroy(): bool
time() - Regresa los números de segundo transcurridos desde el 1o de enero de 1970, tiempo Unix.
setcookie() - establece una cookie o galleta.
$_COOKIE[] - vector global
Dentro de el archivo del encabezado podemos añadir un menú y manipularlo si es administrativo o un usuario.
La clase de utilidad de Bootstrap .ms-auto establece como margin-start: auto.
Crear las opciones del lado derecho: usuario y salida.
Crear el parámetro private $sesion; el la clase Tablero.
Modificar el constructor en la clase Tablero.
Crear el método de logout() en la clase Tablero.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Usuarios, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Para que los usuarios puedan visualizar los datos de forma clara y ordenada, presenta la información en filas y columnas estructuradas, facilitando la lectura rápida y el análisis de la información general de la cuenta o del sistema.
Crearemos la vista de Alta Baja y Cambios (CRUD en inglés) con el formularios para el proceso de Alta.
Debemos primero “armar” la vista con los datos necesarios.
Crear la vista con los campos.
Regresar los valores al controlador y validarlos.
Insertarlos en la base de datos.
Creamos la etiqueta Select
Escribimos la primer etiqueta <option>
Creamos las etiquetas del catálogo con PHP
Verificamos si una de ellas ha sido seleccionada previamente.
Realizaremos el proceso de validación y creación de la clave de acceso temporal.
Los usuarios tendrán un estado “inactivo”.
Devuelve una cadena con barras invertidas antes de los caracteres que deben escaparse.
Primero verificaremos que el correo no exista previamente en la base de datos.
Después insertamos el registro.
Después enviaremos el correo al usuario.
Aprovecharemos la vista de “Alta” para modificar los datos.
Necesitamos un método para “armar” la vista.
Aprovecharemos la vista de “Alta” para mostrar el registro antes de borrarse.
Necesitamos un método para “armar” la vista de baja.
En nuestro caso, la baja será lógica, no física.
Debemos validar que el usuario esté activo.
Actualizar la fecha del login.
Enviarlo a diferente menú (si procede).
Debemos definir el tamaño de la página (una constante).
El método de carátula debemos calcular el número de página.
Determinar el número de registros de la tabla.
Debemos calcular la página y el último registro.
Enviar los datos a la vista
Crear un archivo de librerías
Debemos definir el tamaño de la página (una constante).
El método de carátula debemos calcular el número de página.
Determinar el número de registros de la tabla.
Debemos calcular la página y el último registro.
Enviar los datos a la vista
Crear un archivo de librerías
Debemos definir el tamaño de la página (una constante).
El método de carátula debemos recibir el número de página.
Determinar el número de registros de la tabla.
Debemos calcular la página y el último registro.
Enviar los datos a la vista
Crear un archivo de librerías
Límites y número de páginas (izquierda y derecha)
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Departamentos, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Utilizaremos los métodos y la vista de la entidad anterior para crear el proceso de alta adaptando el formulario y el método de alta para el lanzamiento de la vista hasta la inserción de los datos.
Crearemos la vista con los siguientes campos:
Id (*) int(11)
departamento varchar(200)
ubicacion varchar(200)
presupuesto decimal(10,2)
Aprovecharemos la vista de “Alta” para modificar los datos.
Necesitamos un método para “armar” la vista.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Puestos, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Utilizaremos los métodos y la vista de la entidad anterior para crear el proceso de alta adaptando el formulario y el método de alta para el lanzamiento de la vista hasta la inserción de los datos.
Aprovecharemos la vista de “Alta” para modificar los datos.
Necesitamos un método para “armar” la vista.
Aprovecharemos la vista de “Alta” para mostrar el registro antes de borrarse.
Necesitamos un método para “armar” la vista de baja.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comentario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Empleados, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Utilizaremos los métodos y la vista de la entidad anterior para crear el proceso de alta adaptando el formulario y el método de alta para el lanzamiento de la vista hasta la inserción de los datos.
Utilizaremos los métodos y la vista de la entidad anterior para crear el proceso de alta adaptando el formulario y el método de alta para el lanzamiento de la vista hasta la inserción de los datos.
Una vez que hemos limpiado las variables, las vamos a validar, armamos el arreglo y procedemos a la inserción del registro.
Utilizaremos la vista de alta y sus procesos de captura, limpieza, validación y armado para el proceso de modificación.
Crearemos un método para el armado de la vista.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Una competencia laboral es la capacidad de una persona para hacer un trabajo real con éxito. Se forma al unir los conocimientos (lo que sabes), las habilidades (lo que sabes hacer) y las actitudes (cómo te portas) al cumplir con una tarea.
Utilizaremos los métodos y la vista de la entidad anterior para crear el proceso de alta adaptando el formulario y el método de alta para el lanzamiento de la vista hasta la inserción de los datos.
Validaremos las entradas, formaremos los arreglos y procederemos a insertarlos en la base de datos.
Realizaremos el proceso de modificación y baja tomando los métodos de las entidades anteriores y usando la vista de Alta.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Realizaremos la conexión entre las entidades de competencias y puestos.
Una competencia puede estar conectada a varios puestos y un puesto puede tener muchas competencias.
Al seleccionar un puesto relacionado a la competencia ya no podríamos a volver a seleccionar.
Añadimos un registro en la tabla puestos-competencias.
Quitaremos de la referencia de una competencia a un puesto eliminando el registro de la tabla intermedia.
En este caso si realizaremos un borrado de la tabla.
Al seleccionar un puesto relacionado a la competencia ya no podríamos a volver a seleccionar.
Añadimos un registro en la tabla puestos-competencias.
Al seleccionar un competencia relacionada a la competencia ya no podríamos a volver a seleccionar.
Añadimos un registro en la tabla puestos-competencias.
Quitaremos de la referencia de una competencia a un puesto eliminando el registro de la tabla intermedia.
En este caso si realizaremos un borrado de la tabla.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comentario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Cursos, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Tomaremos los métodos y la vista de otra entidad para generar las funcionalidades.
Utilizaremos la vista de alta y sus procesos de captura, limpieza, validación y armado para el proceso de modificación.
Crearemos un método para el armado de la vista.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Los planes de capacitación están relacionados con los cursos y tienen una tabla intermedia de planes-cursos.
Realizaremos el proceso de alta tomando los métodos y la vista de entidades ya realizadas.
Realizaremos el proceso de modificación y baja tomando los métodos de las entidades anteriores y usando la vista de Alta.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Realizaremos la conexión entre las entidades de Planes y Cursos.
Una competencia puede estar conectada a varios Cursos y un puesto puede tener muchas Planes.
Al seleccionar un puesto relacionado a la competencia ya no podríamos a volver a seleccionar.
Añadimos un registro en la tabla Cursos-Planes.
Quitaremos de la referencia de una competencia a un puesto eliminando el registro de la tabla intermedia.
En este caso si realizaremos un borrado de la tabla.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comenario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Capacitaciones, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Tomaremos los métodos y la vista de otra entidad para generar las funcionalidades.
Utilizaremos la vista de alta y sus procesos de captura, limpieza, validación y armado para el proceso de modificación.
Crearemos un método para el armado de la vista.
Crear una vista con los campos a filtrar y una opción para ordenar.
Recibir los datos y armar el filtro, la cadena informativa y la cadena para ordenar.
Almacenar los datos del filtro en la base de datos.
Modificar los querys de consulta.
Lanzar nuevamente la carátula.
Al unir un curso en específico (capacitaciones) con un empleado, será un proceso de inscripción y lo llamaremos "calificaciones".
Un empleado puede tener muchas calificaciones y un curso puede tener muchos empleados(as) inscritos.
Un curso con un empleado(a) inscrito sólo tiene una calificación.
La carátula nos debe mostrar la calificación del empleado, y si no tiene la calificación aún, lo marcaremos como "- -".
También habilitaremos el mismo botón para inscribir y desinscribir al empleado(a).
Inscribiremos y desincribiremos a los empleados por medio de la tabla intermedia de "calificaciones".
La calificación debe almacenarse en la tabla de calificaciones, la cual sólo existe si el empleado(a) está inscrito.
Crearemos una vista para capturar la calificación y la enviamos de regreso para su validación e inserción.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comentario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
Para crear la estructura MVC (Modelo-Vista-Controlador) para la entidad Evaluaciones, necesitamos definir cuatro componentes principales: la base de datos con su migración, el Modelo, la Controladora y las Vistas para listar, crear, editar y ver los datos.
Una vez leídas todas las competencias, crearemos una vista de tipo acordeón con una pestaña para cada competencia.
Una vez leídas todas las competencias, crearemos una vista de tipo acordeón con una pestaña para cada competencia.
Una vez leídas todas las competencias, crearemos una vista de tipo acordeón con una pestaña para cada competencia.
Recibiremos los datos del formulario, realizaremos la limpieza de los mismos y actualizaremos las calificaciones dentro de un ciclo.
Aprovecharemos para calcular la evaluación promedio y lo actualizaremos el registro del empleado.
El proceso de asistencia se añade por registro, aunque en realidad se vacía del reloj checador.
El reloj checador tiene su propio software y sus categorías y sus estados.
Realizaremos en forma manual el registro de asistencia o inasistencia del empleado.
Almacenaremos el registro en la tabla correspondiente.
Recibiremos, limpiaremos, validaremos e insertaremos los datos de las asistencias o faltas.
Crearemos el proceso de modificación y borrado del proceso de asistencia o falta.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comentario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
La integridad referencial es propiedad de la base de datos.
La misma significa que la clave externa de una tabla de referencia siempre debe aludir a una fila válida de la tabla a la que se haga referencia.
La integridad referencial garantiza que la relación entre dos tablas permanezca sincronizada durante las operaciones de actualización y eliminación.
Departamentos son llamados desde empleados
Puestos son llamados desde empleados
Empleados son llamados desde asistencias, calificaciones, evaluaciones
Evaluaciones son llamados desde empleados, competencia
Competencias son llamados desde puestos, evaluaciones
Cursos son llamados desde capacitaciones, planes
Capacitaciones son llamados desde calificaciones
Departamentos son llamados desde empleados
Puestos son llamados desde empleados
Empleados son llamados desde asistencias, calificaciones, evaluaciones
Evaluaciones son llamados desde empleados, competencia
Competencias son llamados desde puestos, evaluaciones
Cursos son llamados desde capacitaciones, planes
Capacitaciones son llamados desde calificaciones
Departamentos son llamados desde empleados
Puestos son llamados desde empleados
Empleados son llamados desde asistencias, calificaciones, evaluaciones
Evaluaciones son llamados desde empleados, competencia
Competencias son llamados desde puestos, evaluaciones
Cursos son llamados desde capacitaciones, planes
Capacitaciones son llamados desde calificaciones
Realizaremos el respaldo de tabla por tabla en una carpeta dentro de la aplicación, leyendo todos los registros y formateándolos como archivo sql.
Preparar la vista “mensaje” para mandar el respaldo (dos botones).
Crear en Tablero el método para desplegar el mensaje con dos opciones.
Crear en Tablero el método “respaldarEjecutar()”.
Crear en el Modelo los métodos getTablas() y respaldarTabla().
Crear en MySQL dos métodos: queryCrudo() y getBaseDatos().
INSERT INTO productos (id, nombre) VALUES (1, 'Laptop'), (2, 'Mouse');
Cualquier usuario podrá modificar sus datos y su clave de acceso.
//Tipos de usuario
define("ADMON", 1);
define("CAPACITACION", 2);
define("NOMINA", 3);
Cualquier usuario podrá modificar sus datos y su clave de acceso.
En nuestro sistema tendremos tres roles: Administrador, Capacitación y Nómina.
Vamos a integrar los logos, el favicon y el botón de hamburguesa en el sistema.
Compactar los archivos.
Subiremos los archivos al servidor.
Cambiar los datos de la conexión (modificar el usuario).
Verificar la ruta del mismo.
Verificar el correo electrónico.
Verificar los css para la imagen.
Verificar el respaldo.
¿Algo para mejorar en esta sección?
¿Algún comentario o aporte?
Tus comentario son muy importantes y seguiré trabajando para que puedas calificar este curso con 5 estrellas.
Una aplicación que es muy recurrente en Internet es el desarrollo de una aplicación para la administración de Recursos Humanos. Esta aplicación nos sirve para utilizar lenguajes del lado del cliente, como JavaScript y lenguajes del lado del servidor como PHP, así como conectarlo con bases de datos, en este caso como MySQL, herramientas que son las más utilizadas en la Web. En este curso construiremos las páginas web por medio de Bootstrap 5.3. lo cual nos permitirá tener una aplicación responsiva.
Partiremos desde una página completamente en blanco hasta concluir la parte del usuario (front-end) y la parte del administrador (back-end). Los objetivos del presente curso son:
Conocer los aspectos básicos de PHP y su instalación.
Crear la estructura Modelo, Vista y Controlador para construir la tienda virtual con PHP y MySQL.
Crear el controlador, el modelo y las vistas necesarias para permitir el acceso de los usuarios al sistema.
Crear el menú, controlador, modelo y las vistas necesarias para: el tablero, las cuentas, los movimientos.
Manejo de imágenes y paginación de consultas muy largas
Este curso intermedio, por lo que usted debe tener las bases de programación en Bootstrap, PHP, JavaScript y MySQL, aunque no debe de ser experto en ellos. Es una buena oportunidad para poner en práctica sus conocimientos. Usted debe de contar con una instalación de Apache-PHP-MySQL, como XAMPP, MAMP o WAMP.
Al final del curso contarás con todos los archivos del mismo y los esquemas de la base de datos.