CRUD o mantenimiento completo de la tabla books.
A continuación se describe paso a paso lo que debemos hacer para completar este ejercicio.
- Crea los ficheros y clases necesarios:
- El modelo, clase Book
- El controlador, clse BookConroller
- Un directorio views/book donde guardarás las vistas.
Listado. Método index al controlador.
- Añade un
echoen el método para comprobar que todo va bien. - Necesitas cargar todos los registros en un array (p.ej. $books).
- En el modelo, crea el método de conexión, y su método estático
all()que debe leer toda la tabla. No olvides añadir la clase Book al controlador conrequire_once. - Comprueba que los resultados se reciben en index con un
var_dump - Crea la vista
views/book/index.php. En ella debes recorrrer todos los registros y construir una tabla.
- Añade un
Creación 1. Método
createpara mostrar el formulario.- Añade un enlace a la vista
indexque nos lleve a/book/create. - Prueba con
echoque el método se ejecuta. - Construye una vista con el formulario de alta y haz que se muestre en el método create.
- Para el formulario,
method="post"yaction="store"
- Añade un enlace a la vista
Creación 2. Método
storepara guardar el contenido del formulario.- Crea un objeto de la clase Book.
- Vuelca en él el contenido del formulario.
- Crea un método
storeen el modelo que se ocupe de ejecutar el correspondiente INSERT en la base de datos. Usa consulta preparada. - Envía un
header('location....')para que el navegador vuelva al listado.
Creación del método de borrado,
delete.- Añade un enlace por cada registro del index con la ruta
delete/$id. - Crea el método y comprueba con un echo que se ejecuta y que recibes el $id del elemento a borrar.
- Crea el método
deleteen el modelo que ejecute el DELETE sobre la base de datos. Usa consulta preparada. - Envía un
header('location....')para que el navegador vuelva al listado.
- Añade un enlace por cada registro del index con la ruta
Edición individual. Método
show.- Añade un enlacce en la vista de index por cada registro que nos lleve a
show/$id. - Crea el método y comprueba que se ejecuta con echo.
- Añade un método estático
find($id)en el modelo. Usa consulta preparada. - Crea un objeto $book en el controlador que lea los datos con el citado
find. - Crea la vista
book/views/show.phpy muestra los datos del libro. - Añade a la vista enlaces para: volver al listado, editar y borrar el registro.
- Añade un enlacce en la vista de index por cada registro que nos lleve a
Edición 1. Método
editpara mostrar un formulario precargado con los datos del registro.- Añade un enlacce en la vista de index por cada registro que nos lleve a
edit/$id. - Crea el método y comprueba que se ejecuta desde los enlaces creados. Usa echo.
- Crea un objeto $book en el controlador que lea los datos con el citado
find. - Crea la vista
book/views/edit.phpy muestra los datos del libro dentro de un formulario. Cada campo debe alojarse en un input. - Recuerda: `method="post" action="../update/$id".
- Añade un enlacce en la vista de index por cada registro que nos lleve a
- Edición 2. Método
updatepara guardar el formulario anterior.- Crea el método
updatey usando echo comprueba que se ejecuta al enviar el formulario anterior. - Usa el método
find($id)del modelo para leer el registro que estamos modificando. - Crea un nuevo método
save()en el modelo que ejecute el UPDATE sobre la base de datos. Usa consulta preparada. - Ejecuta el citado método
savey reenvía el navegador al listado.
- Crea el método