El patrón MVC (Modelo, Vista, Controlador)es un tipo de diseño que separa en capas bien definidas el desarrollo de una aplicación, esta conformada por tres partes:

  • Modelo: Encargada de la lógica de la aplicación y la conexión con la base de datos.
  • Controlador:  Se encarga de gestionar las peticiones del usuario hacia la aplicación, para que las procese el modelo y se muetre el resultado en la vista.
  • Vista: Es el responsable de mostrar al usuario el resultado que se obtiene del modelo al traves de controlador.

Para entender como funciona lo explicaremos mediante la imagen, EL usuario que esta del lado del cliente a través de la aplicación hace una petición y esa petición pasa por un primer filtro, que es la vista, ese primer filtro puede realizar una serie de validaciones que se le conoce como «validación lado cliente». Después que pasa por el primer filtro, que es la vista, que a su vez esa petición llega a un segundo filtro, que es el controlador y se encaga de realizar una segunda validación pero ya más enfocada al Servidor y comienza a revisar la información que el usuario ha mandado para verificar que sea coherente y si es válido, pasar al tercer filtro, que seria el Modelo, dónde el modelo se encarga de decidir que realizara con la información.

Ya que termine de tomar la decisión para generar una acción, el Modelo devuelve la información al Controlador y lo muestra en la Vista.

Como podrán ver, para tomar datos de la base de datos, tendrá que pasar por una serie de filtros y validaciones para obtener una respuesta, de esta manera proteger los datos del lado del servidor.

Para aplicar el Modelo-Vista-Controlador, tenemos que crear un proyeto el cual se llamara ProyectoNo1, dentro de ese proyecto tenemos que crear 3 carpetas, que serian nuestras capas. Este proyecto tendrá un primer archivo, el cual encontrara el usuario cuando entre a la aplicación.

El archivo tendrá el nombre como index.php con la extención «.php» , en el index mostraremos la salida de la vista al usuario y a traves de el enviaremos las distintas acciones que el usuario envíe al controlador.

 

En la carpeta de views crearemos otro archivo php, llamada template, en ese archivo vamos a tener una plantilla de html el cual vera vera el usuario cuando comience a interactuar con la aplicación.

En el cuerpo de la etiqueta body, colocaremos un encabezado con la etiqueta header, colocándole un título con una etiqueta h1 para poner un logotipo, después del header  colocaremos una barra de navegación con la etiqueta nav para que coloquemos algunos botones, que tendrán un vínculo con diferentes vistas.

 

se pondra la etiqueta anchore para que se realice los vínculos dentro de los botones, los títulos de los botones serian «Inicio», «Nosotros», «Servicios», «Contáctanos». Despues en el archivo template, tendremos un encabezado, una barra de navegación y ahora colocaremos un contenido, colocandolo en una sección en un titulo h1 con el texto de «Página de inicio».

Ya que tenemos nuestro archivo template como pagina de inicio, tendremos que llamar esta pagina al index, tendremos que realizar la petición en el controlador. Entonces tendremos que crear un archivo en la carpeta de controllers llamándolo como «controller.php». Dentro de las etiquetas php iniciamos una clase llamada MvcController y dentro de esa clase contendra una función pública que llame a la plantilla.

Con el método include , lo utilizaremos para incluir otro archivo php, al cual lo colocamos para indicar que incluya el archivo «template» de la carpeta viws para que se pueda visualizar.

 

En el index tenemos que crear una variable para colocarle el objeto, la variable se llama mvc colocándole el objeto donde partimos de la clase MvcController, luego de asignaremos el objeto a la variable, traemos la función plantilla().

Para que el index se pueda conectar con el archivo de controller, tenemos que requerir un require_once, esto lo utilizaremos para traer las clases que tiene el archivo «controller.php».

Como resultado la vita index tendría que quedar a de esta manera: