ARQUITECTURA MVC Modelo Vista Controlador es un patrón de arquitectura de software que se utiliza mucho en aplicaciones web, separándola en tres capas.

Slides:



Advertisements
Presentaciones similares
Curso de PHP Tema 5: Sesiones.
Advertisements

Mónica Acosta Yeison Ceballos Carlos Rodallega
Ing. Guillermo Pantaleo - Ayudante: Diego Montaldo
Ing. Guillermo Pantaleo - Ayudante: Diego Montaldo
Creación de controles de usuario
BASE DE DATOS Primeros pasos
CGI I La mayor parte de los elementos HTML de que disponemos permite al visitante visualizar los contenidos de un sitio, pero no interactuar con él. Dicho.
Base de Datos Distribuidas FUNDAMENTOS DE BASES DE DATOS DISTRIBUIDAS
Bienvenido a Marangatu'i, Módulo del Contribuyente de la SET!
Curso de Diseño y Construcción de Productos de Software CLASE 2
Model View Controller (MVC)
PROGRAMACION ORIENTADA A OBJETOS II
Mayo de 2009Dos Ideas - La visión de Sistemas desde el Desarrollo Introducción a Base de Datos Conceptos básicos.
POO (Programación Orientada a Objetos)
Desarrollo de sitios web con PHP y MySQL Tema 5: Sesiones José Mariano González Romano
y programa de Microsoft Access
Modelo de Análisis Centro ISYS Escuela de Computación
Contexto: Aplicación gráfica.  Siempre que se piensa en separar la funcionalidad de una aplicación de su interacción con el usuario, bien sea una aplicación.
UNIDAD I Conceptos Básicos.
Gestión de Contenido Electrónico CONCEPTOS DE INFOPATH De Andrés Concha Bucaram.
SIA Sistema Integrado de Admisión
Diseño de una Base de datos
Curso de Creación aplicaciones dinámicas web con PHP y MySQL Continuamos.
Control de errores visual basic
Publicación de bases de datos Access en la web
ARQUITECTURA MVC Modelo Vista Controlador es un patrón de arquitectura de software que se utiliza mucho en aplicaciones web, separándola en tres capas.
APROBADADIA.TXT AS400 Plataforma BANFOANDES
Modelo-Vista-Controlador Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación original fue realizada en Smalltalk.
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
MODELO DE APLICACIONES DISTRIBUIDAS EN INTERNET.
Formularios La mayor parte de los elementos HTML de que disponemos permite al visitante visualizar los contenidos de un sitio, pero no interactuar con.
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
Proyecto Bolsa de trabajo
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
Creación de Usuarios Un Usuario representa a una persona que puede ingresar a SugarCRM y hacer uso de sus funcionalidades acorde al tipo de usuario, grupo.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
Modelo de 3 capas.
C OLEGIO DE B ACHILLERES N O.13 X OCHIMILCO, T EPEPAN C ARRASCO G ARCÍA L ORENA T ORRES H EREDIA C ARLA P ALMIRA G RUPO : 308 M ATUTINO E QUIPO : 12.
Manual Desarrollo Flex – J2EE. Contenidos Análisis y Diseño 1 Implementación 2 J2EE 3 Pruebas 4.
CONTRATOS DE CLIENTES Orlando Sedamano Cornejo Marco Bustinza
Manual violento de Navicat
Nombre Tema: Modelo Cliente-Servidor Integrantes: Enrique Aponte Lourdes Molina Pablo López Janeth Hernández Marbella Olvera Arturo Parra.
SQL Lenguaje Estructurado de Consulta MATERIA: diseñar sistemas de información ALUMNO: sarmiento flores Liliana Guadalupe GRUPO: 4° “A” TURNO: matutino.
MiCrOsOfT AcCeSs PrAcTiCa #2 NaDiA pArEdEs. ¿qUe Es AcCeSs? es un programa del sist. Operativo Creado y modificado para uso personal componente de la.
Tema 11 Bases de Datos y el Lenguaje SQL
Tecnologías Cliente / Servidor Capitulo II Richard Jiménez V. clienteserver.wordpress.com.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
INTERFAZ DE ACCESS  Access es un sistema gestor de bases de datos relacionales (SGBD). Una base de datos suele definirse como un conjunto de información.
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
Aplicaciones en 2,3 y n capas
Administración de Sitios Web Introducción al Lenguaje PHP
ARQUITECTURA MVC Modelo Vista Controlador es un patrón de arquitectura de software que se utiliza mucho en aplicaciones web, separándola en tres capas.
Partes de la ventana Access
¿Cómo programar un Botón para agregar registros a una base de datos?
UNIVERSIDAD LATINA II.- CONSTRUCCIÓN DE LA BASE DE DATOS. E.I. L.E. Prof. Ramón Castro Liceaga.
INTER FAZ DE ACCESS COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MONTIEL FUENTES REYNA ELIZABETH RIVAS ALANIS ARIANA VALERIA GRUPO:304.
Fundamentos de Ingeniería de Software
Conociendo el modelo Cliente-Servidor
ACCESO A DATOS EN ASP.NET Controles de origen de datos Controles enlazados a datos.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
Helpers en ASP.NET MVC3. Introducción Los helpers son una herramienta muy potente para generar nuestro propio código HTML dentro de las vistas. Los helpers.
Introducción a programación web Martin Esses. Formularios HTML se utilizan para pasar datos a un servidor. Un formulario HTML puede contener elementos.
Introducción a phpmyadmin índice 1. Introducción 6. Insertar registros 5. Crear usuario para php 8. Modificar registros 2. Base de datos MySQL 3. Crear.
Crear Aplicación Cliente para Conectarse a una Base de Datos.
Php y mysql índice 1. Conexión 6. Ejercicio 5. Insertar un registro 2. Operaciones básicas 3. Seleccionar BD 4. Crear una BD P h p y m y s q l Índice 1.
Definición: Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos. ARQUITECTURA.
Introducción a programación web Martin Esses. En las presentaciones anteriores, vimos como enviar datos a un controlador usando POST y como generar formularios.
Helpers en ASP.NET MVC3. Introducción Los helpers son una herramienta muy potente para generar nuestro propio código HTML dentro de las vistas. Los helpers.
ARQUITECTURA MVC Modelo Vista Controlador es un patrón de arquitectura de software que se utiliza mucho en aplicaciones web, separándola en tres capas.
FUNDAMENTOS DE PROGRAMACION EN ENTORNO WEB. Rodrigo Cabello Ing. Informático Director de proyectos Think – Ideas in Motion FUNDAMENTOS.
Transcripción de la presentación:

ARQUITECTURA MVC Modelo Vista Controlador es un patrón de arquitectura de software que se utiliza mucho en aplicaciones web, separándola en tres capas (modelo, controlador y vista) que posteriormente veremos para que se utiliza cada una. El Modelo Vista Controlador (MVC) es un patrón de arquitectura de software que separa los datos y la lógica de negocio de una aplicación de la interfaz de usuario y el módulo encargado de gestionar los eventos y las comunicaciones. Para ello MVC propone la construcción de tres componentes distintos que son el modelo, la vista y el controlador, es decir, por un lado define componentes para la representación de la información, y por otro lado para la interacción del usuario1 2. Este patrón de diseño se basa en las ideas de reutilización de código y la separación de conceptos, características que buscan facilitar la tarea de desarrollo de aplicaciones y su posterior mantenimiento3 4. Tomado de:

PASOS DE LA ARQUITECTURA 1. Creación del MER (modelo entidad relación) que se aplicara en el proyecto INVENTARIO BD TABLA

2. Creación de procedimientos almacenados (insertar, listar, consultar, editar, eliminar) PASOS DE LA ARQUITECTURA Crear el procedimiento almacenado con el nombre de: insertarcliente

En la carpeta CONTROL alojaremos todos los archivos para la comunicación entre el modelo y la interfaz los cuales denominaremos con nombre CtrNombreControl.php. En la carpeta MODELO estarán todos los archivos que manejan las reglas del negocio e interactuar con la base de datos los cuales llamaremos NombreModelo.php. La VISTA es el código HTML que se muestra al usuario, con la información proveniente del controlador, se manejaran dependiendo el proceso 2 archivos; uno NombreFormulario.php y el otro quien recibe los datos del formulario y los envía al controlador para realizar un determinado proceso NombreArchivo.php. En la carpeta CONEXION alojaremos la conexión que establece con el servidor mysql (contraseña, usuario mysql, nombre de la BD) CtrNombreControl.php Nombre del proyecto 3.Se debe crear carpeta principal dentro de esta crear la estructura inicial. (Creación de las carpetas de ubicación de los procesos principales) En C:\xammp\htdocs\nombre del proyecto PASOS DE LA ARQUITECTURA

4. MODELO Nombre de Archivo Cliente.php <?php class Cliente { var $Cedula, $Nombres, $Apellidos, $Direccion, $Telefono, $Celular, $ ; //MÉTODO CONSTRUCTOR: se encarga de inicializar los atributos de la clase. function __construct() { } METODOS SET: Cambia el valor de la propiedad (actualiza los valores en el objeto). function setCedula($Cedula) { $this->Cedula=$Cedula; } function setNombres($Nombres) { $this->Nombres=$Nombres; }

function setApellidos($Apellidos) { this->Apellidos=$Apellidos; } function setDireccion($Direccion) { $this->Direccion=$Direccion; } function setTelefono($Telefono) { $this->Telefono=$Telefono; } function setCelular($Celular) { $this->Celular=$Celular; } function set ($ ) { $this->set =$ ; }

METODOS GET: Lee el valor de la propiedad(extrae los valores del objeto) function getCedula() { return $this->Cedula; } function getNombres() { return $this->Nombres; } function getApellidos() { return $this->Apellidos; } function getDireccion() { return $this->Direccion; } function getTelefono() { return $this->Telefono; }

function getCelular() { return $this->Celular; } function get () { return $this->get ; } } //CIERRE CLASE ?>

5. CONTROL Nombre de Archivo Ctrcliente.php <?php class CtrCliente { var $ObjCliente; var $resultado; //MÉTODO CONSTRUCTOR: se encarga de inicializar los atributos de la clase. function CtrCliente($objClienteIn) { $this->ObjCliente=$objClienteIn; } METODO PARA RETORNAR RESULTADOS function getResultado() { return $this->resultado; }

//METODOS PARA REALIZAR PROCESOS //METODO PARA INSERTAR PERSONAS function insertar() { $Cedula=$this->ObjCliente->getCedula(); $Nombre=$this->ObjCliente->getNombre(); $Apellidos=$this->ObjCliente->getApellidos(); $Direccion=$this->ObjCliente->getDireccion(); $Telefono=$this->ObjCliente->getTelefono(); $Celular=$this->ObjCliente->getCelular(); $ =$this->ObjCliente->get (); //ARCHIVO PARA CONECTARNOS A LA BASE DE DATOS include("../conexion/conexion.php");

//CONSULTA PARA INSERTAR UN CLIENTE $consulta="call insertarcliente('$Cedula', '$Nombre', '$Apellidos', '$Direccion', '$Telefono','$Celular','$ ')"; $resultado=mysqli_query($conexion,$consulta); if($resultado) { $this->resultado=$resultado; } else { return $conexion; }

6. VISTA Para realizar el proceso de inserción de un registro: se manejan 2 archivos. Archivo 1: contiene la creación del formulario como se muestra en la imagen. Frmcliente.php En el formulario en el método action se debe especificar el nombre del segundo archivo quien recibirá los datos.

Cedula Nombres Apellidos Direccion

Telefono Celular

Archivo 2: Este archivo recibirá los datos del formulario y los enviara al controlador para realizar el proceso de inserción de un cliente guardarcliente.php <?php $Cedula=$_POST["Cedula "]; $Nombres=$_POST["Nombres"]; $Apellidos=$_POST["Apellidos"]; =$_POST[" "]; $Direccion=$_POST["Direccion"]; $Telefono=$_POST["Telefono"]; $Celular=$_POST["Celular"]; //ARCHIVOS PARA TRABAJAR CON EL CLIENTE include("../modelo/cliente.php"); include("../control/ctrcliente.php"); $ObjCliente=new Cliente(); $ObjCtrCliente=new CtrCliente($ObjCliente); $ObjCliente->setCedula($Cedula); $ObjCliente->setNombres($Nombres); $ObjCliente->setApellidos($Apellidos); $ObjCliente->setDireccion($Direccion); $ObjCliente->set ($ ); $ObjCliente->setTelefono($Telefono); $ObjCliente->setCelular($Celular);

//LLAMAMOS EL METO PARA REALIZAR LA INSERCION DEL CLIENTE $error=$ObjCtrCliente->insertarcliente(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } echo " alert('Registro Almacenado') "; ?>

6. CONEXION Se Maneja Un Archivo Llamado Conexión.Php Con La Siguiente Instrucción <?php $conexion=new mysqli("localhost","Usuario(root)","Contraseña","NombreBd") ?> Ejemplo: <?php $conexion=new mysqli('localhost','root','','inventario'); ?>

7. Consultar 7,1. Creación de procedimientos almacenados (consultar) Crear el procedimiento almacenado con el nombre de: consultarcliente

7,2. en Control Adicionar al archivo ctrlcliente.php antes de la última llave // CONSULTAR function consultar() { $Cedula=$this->ObjCliente->getCedula(); //ARCHIVO PARA CONECTARNOS A LA BASE DE DATOS include("../conexion/conexion.php"); //CONSULTA PARA INSERTAR UN CLIENTE $consulta="call consultarcliente('$Cedula')"; $resultado=mysqli_query($conexion,$consulta); if($resultado) { $this->resultado=$resultado; } else { return $conexion; }

7,3. En VISTA Para realizar la consulta de un registro: se manejan 2 archivos. Archivo 1: contiene la creación del formulario como se muestra en la imagen. FrmBuscarcliente.php En el formulario en el método action se debe especificar el nombre del segundo archivo quien recibirá los datos.

Cedula 7,3,1, Guardarlo en vista con el nombre de FrmBuscarcliente.php

7,3,2, Guardarlo en vista con el nombre de buscarcliente.php <?php $Cedula=$_POST["Cedula"]; //ARCHIVOS PARA TRABAJAR CON EL CLIENTE include("../modelo/cliente.php"); include("../control/ctrcliente.php"); $ObjCliente=new Cliente(); $ObjCtrCliente=new CtrCliente($ObjCliente); $ObjCliente->setCedula($Cedula); //LLAMAMOS EL METO PARA REALIZAR LA INSERCION DEL CLIENTE $error=$ObjCtrCliente->consultar(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } $total=mysqli_num_rows($resultado); if($total!=0) { $row=mysqli_fetch_array($resultado);

?> Cedula Nombres Apellidos Direccion Telefono Celular <?php } else { echo" alert('No hay registros'); "; }

8. Listar 8,1. Creación de procedimientos almacenados (Listar) Crear el procedimiento almacenado con el nombre de: listarcliente

8,2. en Control Adicionar al archivo ctrlcliente.php antes de la última llave //METODO PARA LISTAR TODOS LOS CLIENTES function listar() { //ARCHIVO PARA CONECTARNOS A LA BASE DE DATOS include("../conexion/conexion.php"); //CONSULTA PARA INSERTAR UN CLIENTE $consulta="call listarcliente()"; $resultado=mysqli_query($conexion,$consulta); if($resultado) { $this->resultado=$resultado; } else { return $conexion; }

8,3. En VISTA Archivo 1: contiene las instrucciones para realizar el listado de todos los clientes listarcliente.php. El cual contiene <?php //ARCHIVOS PARA TRABAJAR CON EL CLIENTE include("../modelo/cliente.php"); include("../control/ctrcliente.php"); $ObjCliente=new Cliente(); $ObjCtrCliente=new CtrCliente($ObjCliente); //LLAMAMOS EL METO PARA REALIZAR LA INSERCION DEL CLIENTE $error=$ObjCtrCliente->listar(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } $total=mysqli_num_rows($resultado); if($total!=0) { ?>

Cedula Nombres Apellidos Direccion Telefono Celular <?php while($row=mysqli_fetch_array($resultado)) { ?>

<?php } ?> <?php } else { echo" alert('No hay registros'); "; }

9,1. Creación de procedimientos almacenados (modificar) Crear el procedimiento almacenado con el nombre de: modificarcliente 9. Modificar

9,2. en Control Adicionar al archivo ctrlcliente.php antes de la última llave //---modificar function modificar() { $Cedula=$this->ObjCliente->getCedula(); $Nombre=$this->ObjCliente->getNombres(); $Apellidos=$this->ObjCliente->getApellidos(); $Direccion=$this->ObjCliente->getDireccion(); $Telefono=$this->ObjCliente->getTelefono(); $Celular=$this->ObjCliente->getCelular(); $ =$this->ObjCliente->get (); //ARCHIVO PARA CONECTARNOS A LA BASE DE DATOS include("../conexion/conexion.php"); //CONSULTA PARA INSERTAR UN CLIENTE $consulta="call modificarcliente('$Cedula', '$Nombre', '$Apellidos', '$Direccion', '$Telefono','$Celular','$ ')"; $resultado=mysqli_query($conexion,$consulta); if($resultado) { $this->resultado=$resultado; } else { return $conexion; }

9,3. En VISTA Archivo 1: contiene las instrucciones para realizar el listado de todos los clientes consultarmodificarcliente.php. El cual contiene Cedula

9,4. En VISTA Archivo 2: contiene las instrucciones para realizar el listado de todos los clientes modificarcliente.php. El cual contiene <?php $Cedula=$_POST["Cedula"]; //ARCHIVOS PARA TRABAJAR CON EL CLIENTE include("../modelo/cliente.php"); include("../control/ctrcliente.php"); $ObjCliente=new Cliente(); $ObjCtrCliente=new CtrCliente($ObjCliente); $ObjCliente->setCedula($Cedula); //LLAMAMOS EL METO PARA REALIZAR LA INSERCION DEL CLIENTE $error=$ObjCtrCliente->consultar(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } $total=mysqli_num_rows($resultado); if($total!=0) { $row=mysqli_fetch_array($resultado); ?>

Cedula " readonly> Nombre "> Apellidos "> Direccion "> Telefono "> Celular "> "> <?php } else { echo" alert('No hay registros'); "; }

9,5. En VISTA Archivo 3: contiene las instrucciones para realizar el listado de todos los clientes guardarmodificarcliente.php. El cual contiene <?php $Cedula=$_POST["Cedula"]; $Nombres=$_POST["Nombre"]; $Apellidos=$_POST["Apellidos"]; $ =$_POST[" "]; $Direccion=$_POST["Direccion"]; $Telefono=$_POST["Telefono"]; $Celular=$_POST["Celular"]; //ARCHIVOS PARA TRABAJAR CON EL CLIENTE include("../modelo/cliente.php"); include("../control/ctrcliente.php"); $ObjCliente=new Cliente(); $ObjCtrCliente=new CtrCliente($ObjCliente); $ObjCliente->setCedula($Cedula); $ObjCliente->setNombres($Nombres); $ObjCliente->setApellidos($Apellidos); $ObjCliente->setDireccion($Direccion); $ObjCliente->setTelefono($Telefono); $ObjCliente->setCelular($Celular); $ObjCliente->set ($ ); //LLAMAMOS EL METO PARA REALIZAR LA INSERCION DEL CLIENTE $error=$ObjCtrCliente->modificar(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } echo " alert('Registro Actualizado') "; echo" location.href='consultarmodificarcliente.php'; "; ?>

10,1. Creación de procedimientos almacenados (Eliminar) Crear el procedimiento almacenado con el nombre de: eliminarcliente 10. Eliminar

10,2. en Control Adicionar al archivo ctrlcliente.php antes de la última llave //---Eliminar function eliminar() { $Cedula=$this->ObjCliente->getCedula(); //ARCHIVO PARA CONECTARNOS A LA BASE DE DATOS include("../conexion/conexion.php"); //CONSULTA PARA INSERTAR UN CLIENTE $consulta="call eliminarcliente('$Cedula')"; $resultado=mysqli_query($conexion,$consulta); if($resultado) { $this->resultado=$resultado; } else { return $conexion; }

10,3. En VISTA Archivo 1: contiene las instrucciones para realizar el listado de todos los clientes consultareliminarcliente.php. El cual contiene Cedula

10,4. En VISTA Archivo 2: contiene las instrucciones para realizar el listado de todos los clientes eliminarcliente.php. El cual contiene <?php $Cedula=$_POST["Cedula"]; //ARCHIVOS PARA TRABAJAR CON EL CLIENTE include("../modelo/cliente.php"); include("../control/ctrcliente.php"); $ObjCliente=new Cliente(); $ObjCtrCliente=new CtrCliente($ObjCliente); $ObjCliente->setCedula($Cedula); //LLAMAMOS EL METO PARA REALIZAR LA INSERCION DEL CLIENTE $error=$ObjCtrCliente->consultar(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } $total=mysqli_num_rows($resultado); if($total!=0) { $ObjCliente->setCedula($Cedula); $error=$ObjCtrCliente->eliminar(); $resultado=$ObjCtrCliente->getResultado(); if(!$resultado) { die("Error en la consulta: ".mysqli_error($error)); } echo" alert('Registro eliminado'); "; echo" location.href='consultareliminarcliente.php'; "; } else { echo" alert('No hay registros'); "; }