Cómo crear un crud en PHP con MySQL y Bootstrap

Hola que tal, bienvenido a este nuevo artículo en donde aprenderás cómo crear un crud en PHP con MySQL y Bootstrap, además te enseño como crear una plantilla MVC para tus proyectos web con PHP, a continuación dejo las pantallas de como queda al final el proyecto.

icon
icon

Este proyecto y su estructura es fundamental si estás aprendiendo o a futuro piensas aprender un framework como Laravel o Simfony.

Pantalla de registro.

Pantalla Mostrar

Pantalla actualizar alumnos

Artículos relacionados: Cómo configurar e instalar Laravel 5.5

Estructura del Proyecto

A continuación muestro la estructura del proyecto, aunque no usamos ningún framework podemos ver que el proyecto está organizado algo parecido como si lo estuviéramos utilizando.

Archivo connection.php

Como su nombre lo dice, este archivo permite la conexión a la base de datos, para esto se usa la librería PDO. 

Archivo index.php

Este archivo carga el controlador y la acción, que luego son enviadas al archivo routing.php, al inicio se carga el archivo de conexión a la base de datos y al final se carga el archivo layout.php, que veremos más adelante.

Archivo routing.php

Este archivo donde se declaran los controladores y las acciones para cada uno de los controladores, así mismo es el que se encarga de enviar al controlador adecuado y la acción (el método) que vienen desde el archivo index.php

icon
icon

 

Archivo cabecera.php

Este es un archivo que se usa para toda la aplicación, como un menú que luego se añade al archivo layout,php.

 

Archivo layout.php

Este archivo es la plantilla para la aplicación, es decir para cada pantalla de la aplicación se llama a este archivo y únicamente se crean los formularios o tablas necesarios.

 

Archivo register.php

Archivo de registro que contiene el formulario con los campos para el registro del alumno.

 

Archivo show.php

Este archivo muestra la lista de alumnos registrados

Archivo updateshow.php

Este archivo permite mostrar los datos para la actualización del registro.

Archivo AlumnoController.php

Este es el controlador y contiene las acciones, como mostrar, editar, eliminar etc.

 

Archivo Alumno.php

Este archivo es el modelo que mapea los atributos de la clase Alumno hacia la tabla de la base de datos e implementa las acciones CRUD.

A continuación dejo el enlace desde GitHub para la descarga del proyecto Descarga Proyecto, recuerda ejecutar el script de la base de datos y cambiar la clave y usuario de tu base de datos para que funcione.

Hasta la próxima.

Opt In Image
Programación Web Full Stack
Suscríbete ahora y recibe los mejores contenidos sobre Programación Web en tu correo.

Tus datos estarán protegidos y 100% libre de Spam

Full Stack Developer, JavaScript, PHP, Java, Spring, Laravel, Vuejs, Blogger, aprendiendo y compartiendo conocimientos. Cursos de Programación Web en: https://programacionfullstack.com/

Artículos Recomendados

13 Thoughts to “Cómo crear un crud en PHP con MySQL y Bootstrap”

  1. sera posible hacerle una session con tipos de usuarios ‘admin, profesor, alumno’ a este CRUD ?

    1. Elivar Largo

      Adicional a las sesiones debes agregar las restricciones desde el archivo routing.php y pones los controladores que pueden acceder.

  2. podria ser algo tipo permisologia que solo el admin pueda borrar y el profesor editar el resto solo inscribirse y consulta

    1. Elivar Largo

      Si podrías hacerlo, para eso deberías hacer un if por controller y por action, en este ejemplo puedes ver como podrías hacerlo: Sistema Documentario

  3. Hola , muchas gracias por todo lo que ofreces en tu sitio!
    Baje para probar este ejemplo ya que no tengo mucha experiencia y empezar a familiarizarme con esta metodologia. Copie en una carpeta. Genere desde mysql la base, me dio un error de algo pero la creo. Ejecute el index.php desde el localhost de un Xampp ultima version para windows y al registrar a un alumno ocurre lo siguiente como respuesta:
    Fatal error: Uncaught PDOException: SQLSTATE[HY000] [1045] Access denied for user ‘root’@’localhost’ (using password: YES) in C:\xampp\htdocs\crud\connection.php:15 Stack trace: #0 C:\xampp\htdocs\crud\connection.php(15): PDO->__construct(‘mysql:host=loca…’, ‘root’, ‘root’, Array) #1 C:\xampp\htdocs\crud\Model\Alumno.php(65): Db::getConnect() #2 C:\xampp\htdocs\crud\Controllers\AlumnoController.php(29): Alumno::save(Object(Alumno)) #3 C:\xampp\htdocs\crud\routing.php(31): UsuarioController->save() #4 C:\xampp\htdocs\crud\routing.php(10): call(Object(UsuarioController), ‘save’) #5 C:\xampp\htdocs\crud\Views\Layouts\layout.php(22): require_once(‘C:\\xampp\\htdocs…’) #6 C:\xampp\htdocs\crud\index.php(12): require_once(‘C:\\xampp\\htdocs…’) #7 {main} thrown in C:\xampp\htdocs\crud\connection.php on line 15

    podrias ayudarme por favor a reconocer y reparar el error? Muchas gracias.

    1. Elivar Largo

      Hola Enrique, asegurate de haber creado la base de datos cphpmysql y poner tu usuario y clave correcto en la conexión a la base de datos

  4. Enrique

    ya encontre el error. Primero hay que crear una base en administrador de MySQL llamada mari. en conection. php sacar la clave y dejar en blanco la password (tiene puesto root como clave). Saludos

  5. alvaro

    Buen dia, estoy interesado en aprender programacion, conocen alguna pagina para hacerlo online

    1. Elivar Largo

      Hola Alvaro, aquí en mi blog puedes conseguir buenas bases de programación pásate por la sección https://www.ecodeup.com/blog/ y ahí puedes buscar tutoriales paso a paso y desde cero. Así mismo cualquier duda me la puedes dejar en los comentarios. Saludos

  6. fernando

    Buenas estimado,

    me sale el siguiente error , a pesar de copiar todas las carpetas y archivos exactamente iguales. me sale el siguiente error.

    pd: aun no creo la base de datos , sera por eso?

    [05-Jul-2018 23:04:13 UTC] PHP Warning: require_once(Controllers/alumnoController.php): failed to open stream: No such file or directory in /home/grupolau/public_html/postventa/routing.php on line 20
    [05-Jul-2018 23:04:13 UTC] PHP Fatal error: require_once(): Failed opening required ‘Controllers/alumnoController.php’ (include_path=’.:/opt/cpanel/ea-php72/root/usr/share/pear’) in /home/grupolau/public_html/postventa/routing.php on line 20

    1. Hola fernando, lo estas usando sobre un hosting? el ejemplo está en Windows, el problema no es de base de datos, supongo que debe ser por la rutas, actualmente en Windows toma las rutas con /, me parece que en linux las toma con \. Creo que puede ser ese el error.

  7. Luis Lira

    Hola, buenas noches, de casualidad no tendras otro ejemplo de inicio de sesiones, donde exista, admin, coordinador, profesor y alumno.

    Yo tengo un ejemplo de inicio de sesion, pero es con mysqli, lo quiero con PDO.

    Espero y respondas pronto amigo, te lo agradeceria mucho.

    1. Hola Luis, de momento no tengo el ejemplo que tu necesitas, pero puedes revisar este tutorial que con un poco código le puedes añadir las funcionalidades que tu necesitas: Como crear una plantilla Modelo Vista Controlador para tus proyectos en PHP

Dejar un Comentario