SlideShare a Scribd company logo
1 of 11
Download to read offline
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
EJEMPLO DESARROLLO DE UNA APLICACIÓN CON PHP 
En esta oportunidad comenzaremos un ejemplo que será muy cercano a todo el proceso de desarrollo de una aplicación. La aplicación que desarrollaremos será la siguiente: 
Descripción Proyecto 
La empresa ABC se dedica a la compra y venta de celulares y televisores. Para ello tiene empleados que se encargan de realizar todo el proceso de registro y gestión en general de la compra de celulares y televisores. El gerente quiere tener una aplicación que le permita tener un control sobre su negocio. Él quiere que su aplicación le permita tener control sobre los asesores de ventas o empleados que se encargan a su vez de gestionar todo lo concerniente a un teléfono móvil y televisores. El gerente quiere ver reportes y quiere que su aplicación sea para plataformas web. 
Análisis 
Tomando en cuenta el caso anterior y después de haberme reunido con el gerente decidí crear la aplicación. Para ello lo primero que haré es crear todo el diseño y configuración de la base de datos. 
Iniciare como primer paso el servidor de aplicaciones con EasyPHP. 
Luego accederé al servidor por medio del localhost 
Daré clic en el icono de la casa. Y seguidamente clic en open para ir a mi base de datos.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Nos abre la pantalla de phpmyadmin donde crearemos la base de datos y las respectivas tablas. 
Lo primero que haremos y antes de cualquier cosa es crear todas las tablas de la base de datos. 
Tomando en cuenta la descripción del proyecto se me ocurre crear las siguientes tablas: 
1. Empleado 
2. Televisor 
3. Celular 
4. Administrador 
5. Perfil 
De las tablas anteriormente nombradas solo el empleado y el administrador tendrán la posibilidad de ingresar al sistema por medio de un login y un password. 
Le definiremos los atributos a cada tabla: 
Tomando como referencia este prediseño vamos a crear nuestra base de datos con el Sistema Gestor de Base de Datos MySQL. 
Vamos a nuestro phpmyadmin que habíamos abierto previamente.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Clic en Base de datos. 
Le colocamos el nombre y presionamos crear 
La buscamos en la base de datos que nos aparece para dar clic y poder empezar a trabajar en ella. 
Y comenzamos a crear todas las tablas que requerimos en nuestro proyecto tomando como base mi prediseño anterior. 
Comenzaremos creando la tabla perfil.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Luego creamos la tabla empleado que tiene 6 campos y no tendrá para este ejemplo campos autoincrementables ya que la cedula hará las veces de llave primaria. 
Seguimos con la tabla administrador. 
Y terminamos creando las tablas televisor y celular. 
Estas dos si tienen una llave primaria autoincrementable. 
Televisor
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Celular 
Tomando en cuenta esto que acabo de hacer ya tengo mi base de datos creadas con las tablas. 
Solo me falta la definir la llave foránea para la tabla administrador y la tabla empleado que tienen un campo llamado perfil que es la llave foránea que me conectará con la tabla que también se llama perfil. 
Para ello vamos a la tabla empleado. A la estructura. 
Damos clic en el campo perfil que es la llave foránea ya que ella me comunicará con el código de la tabla perfil.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Y damos clic en OK. 
Hacemos el mismo proceso con la tabla Administrador. 
Ahora vamos a dar clic en la opción SQL que me permite ingresar código SQL. 
Y agregaremos estas sentencias que me permiten generar las relaciones de mis tablas empleado y administrador con la tabla perfil.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Esto quiere decir que mi campo en la tabla empleado que se llama perfil y que acabo de definir como llave foránea hace referencia al campo llamado código de mi tabla perfil. De esta manera conecto mi tabla perfil con mi tabla empleado. 
Ahora hago el mismo proceso con la tabla administrador. 
Y en ambos casos presionamos continuar. 
Ahora voy a agregar de forma manual los perfiles que existirían para mi aplicación. 
Clic en la tabla perfil y luego en insertar.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
Y doy clic en el continuar que está en la parte inferior de la imagen. 
Reviso que los datos si hayan sido registrados. 
Con esto ya quedará totalmente lista nuestra configuración de las tablas para nuestro proyecto de software.
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
El script completo de esta base de datos es el siguiente: 
-- phpMyAdmin SQL Dump 
-- version 4.1.4 
-- http://www.phpmyadmin.net 
-- 
-- Servidor: 127.0.0.1 
-- Tiempo de generación: 17-09-2014 a las 07:57:59 
-- Versión del servidor: 5.6.15-log 
-- Versión de PHP: 5.4.24 
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 
SET time_zone = "+00:00"; 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; 
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; 
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; 
/*!40101 SET NAMES utf8 */; 
-- 
-- Base de datos: `databasetienda` 
-- 
-- -------------------------------------------------------- 
-- 
-- Estructura de tabla para la tabla `administrador` 
-- 
CREATE TABLE IF NOT EXISTS `administrador` ( 
`cedula` int(100) NOT NULL, 
`nombre` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`email` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`usuario` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`password` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`perfil` int(100) NOT NULL, 
PRIMARY KEY (`cedula`), 
KEY `perfil` (`perfil`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci; 
-- -------------------------------------------------------- 
-- 
-- Estructura de tabla para la tabla `celular` 
-- 
CREATE TABLE IF NOT EXISTS `celular` ( 
`codigo` int(100) NOT NULL AUTO_INCREMENT, 
`marca` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`tamano` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`color` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`descripcion` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
PRIMARY KEY (`codigo`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci AUTO_INCREMENT=1 ; 
-- --------------------------------------------------------
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
-- 
-- Estructura de tabla para la tabla `empleado` 
-- 
CREATE TABLE IF NOT EXISTS `empleado` ( 
`cedula` int(100) NOT NULL, 
`nombre` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`email` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`usuario` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`password` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`perfil` int(100) NOT NULL, 
PRIMARY KEY (`cedula`), 
KEY `perfil` (`perfil`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci; 
-- -------------------------------------------------------- 
-- 
-- Estructura de tabla para la tabla `perfil` 
-- 
CREATE TABLE IF NOT EXISTS `perfil` ( 
`codigo` int(100) NOT NULL AUTO_INCREMENT, 
`descripcion` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
PRIMARY KEY (`codigo`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci AUTO_INCREMENT=1002 ; 
-- 
-- Volcado de datos para la tabla `perfil` 
-- 
INSERT INTO `perfil` (`codigo`, `descripcion`) VALUES 
(1000, 'Empleado'), 
(1001, 'Administrador'); 
-- -------------------------------------------------------- 
-- 
-- Estructura de tabla para la tabla `televisor` 
-- 
CREATE TABLE IF NOT EXISTS `televisor` ( 
`codigo` int(100) NOT NULL AUTO_INCREMENT, 
`marca` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`tamano` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`color` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
`descripcion` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, 
PRIMARY KEY (`codigo`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci AUTO_INCREMENT=1 ;
Yan David Burbano Amariles 
Ingeniero de Sistemas 
www.davidamariles.com 
-- 
-- Restricciones para tablas volcadas 
-- 
-- 
-- Filtros para la tabla `administrador` 
-- 
ALTER TABLE `administrador` 
ADD CONSTRAINT `administrador_ibfk_1` FOREIGN KEY (`perfil`) REFERENCES `perfil` (`codigo`); 
-- 
-- Filtros para la tabla `empleado` 
-- 
ALTER TABLE `empleado` 
ADD CONSTRAINT `empleado_ibfk_1` FOREIGN KEY (`perfil`) REFERENCES `perfil` (`codigo`); 
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; 
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; 
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; 
En el próximo post seguiremos con el desarrollo del proyecto, lo que haremos es pensar que pantallas necesitamos y que clases debemos crear, ya que nuestra aplicación se desarrollará bajo el paradigma de programación orientada a objetos.

More Related Content

What's hot

Informe publicacion de pag web en hosting
Informe publicacion de pag web en hostingInforme publicacion de pag web en hosting
Informe publicacion de pag web en hosting
jonacriss
 
Examen febrero 2017-2018_daw_daw_solucion_ (1)
Examen febrero 2017-2018_daw_daw_solucion_ (1)Examen febrero 2017-2018_daw_daw_solucion_ (1)
Examen febrero 2017-2018_daw_daw_solucion_ (1)
jomadega1
 
PRACTICA DE OPERADORES DE BUSQUEDA
PRACTICA DE OPERADORES DE BUSQUEDAPRACTICA DE OPERADORES DE BUSQUEDA
PRACTICA DE OPERADORES DE BUSQUEDA
Vanessa Salazar
 
Tutorial ayuda para tu Blog
Tutorial ayuda para tu BlogTutorial ayuda para tu Blog
Tutorial ayuda para tu Blog
Ramón Sanchez
 

What's hot (20)

Entorno abies 1 general
Entorno abies 1 generalEntorno abies 1 general
Entorno abies 1 general
 
Tutorial php mysql
Tutorial php mysqlTutorial php mysql
Tutorial php mysql
 
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
 
Semana 6 Estructura y Componentes
Semana 6   Estructura y ComponentesSemana 6   Estructura y Componentes
Semana 6 Estructura y Componentes
 
Informe publicacion de pag web en hosting
Informe publicacion de pag web en hostingInforme publicacion de pag web en hosting
Informe publicacion de pag web en hosting
 
PHP Y MYSQL
PHP Y MYSQLPHP Y MYSQL
PHP Y MYSQL
 
Seo Cheat Sheet
Seo Cheat SheetSeo Cheat Sheet
Seo Cheat Sheet
 
Primera app
Primera appPrimera app
Primera app
 
Php y MySQL
Php y MySQLPhp y MySQL
Php y MySQL
 
Examen febrero 2017-2018_daw_daw_solucion_ (1)
Examen febrero 2017-2018_daw_daw_solucion_ (1)Examen febrero 2017-2018_daw_daw_solucion_ (1)
Examen febrero 2017-2018_daw_daw_solucion_ (1)
 
PRACTICA DE OPERADORES DE BUSQUEDA
PRACTICA DE OPERADORES DE BUSQUEDAPRACTICA DE OPERADORES DE BUSQUEDA
PRACTICA DE OPERADORES DE BUSQUEDA
 
Asp
AspAsp
Asp
 
A tutor
A tutorA tutor
A tutor
 
Tutorial ayuda para tu Blog
Tutorial ayuda para tu BlogTutorial ayuda para tu Blog
Tutorial ayuda para tu Blog
 
Programacion PHP
Programacion PHPProgramacion PHP
Programacion PHP
 
Programación de códigos en PHP
Programación de códigos en PHPProgramación de códigos en PHP
Programación de códigos en PHP
 
Errores en los datos
Errores en los datosErrores en los datos
Errores en los datos
 
Usando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHPUsando Netbeans para desarrollos en PHP
Usando Netbeans para desarrollos en PHP
 
Presentacion1
Presentacion1Presentacion1
Presentacion1
 
Manual De Flash
Manual De FlashManual De Flash
Manual De Flash
 

Similar to vAplicación parte 1

Colegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexico
Colegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexicoColegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexico
Colegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexico
25415252
 
Manual reportes jsp
Manual reportes jspManual reportes jsp
Manual reportes jsp
jujuju12
 
Reportes En J Developer Parte 1 Y 2
Reportes En J Developer   Parte 1 Y 2Reportes En J Developer   Parte 1 Y 2
Reportes En J Developer Parte 1 Y 2
Steven Gomez
 
(Manual de instalación de cloud computing)
(Manual de instalación de cloud computing)(Manual de instalación de cloud computing)
(Manual de instalación de cloud computing)
Giovanny Echeverry
 
Implementación del Ejemplo de Stored Procedures y Triggers en PHP
Implementación del Ejemplo de Stored Procedures y Triggers en PHPImplementación del Ejemplo de Stored Procedures y Triggers en PHP
Implementación del Ejemplo de Stored Procedures y Triggers en PHP
victorsalas
 

Similar to vAplicación parte 1 (20)

Infografia empleados laravel
Infografia empleados laravelInfografia empleados laravel
Infografia empleados laravel
 
Colegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexico
Colegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexicoColegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexico
Colegio+de+estudios+cientificos+y+tecnologicos+del+estado+de+mexico
 
Infografia farmacia laravel
Infografia farmacia laravelInfografia farmacia laravel
Infografia farmacia laravel
 
Miniproyecto bases de datos ii
Miniproyecto bases de datos iiMiniproyecto bases de datos ii
Miniproyecto bases de datos ii
 
Miniproyecto bases de datos ii
Miniproyecto bases de datos iiMiniproyecto bases de datos ii
Miniproyecto bases de datos ii
 
Manual reportes jsp
Manual reportes jspManual reportes jsp
Manual reportes jsp
 
Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012Manual de la conexión de php con sqlserver 2012
Manual de la conexión de php con sqlserver 2012
 
Reportes En J Developer Parte 1 Y 2
Reportes En J Developer   Parte 1 Y 2Reportes En J Developer   Parte 1 Y 2
Reportes En J Developer Parte 1 Y 2
 
VISUAL BASIC
VISUAL BASICVISUAL BASIC
VISUAL BASIC
 
Seguridad En Programación
Seguridad En ProgramaciónSeguridad En Programación
Seguridad En Programación
 
Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!Php Bitter Sweet Symfony!
Php Bitter Sweet Symfony!
 
William fabricio manual de sistemas sas
William fabricio manual de sistemas sasWilliam fabricio manual de sistemas sas
William fabricio manual de sistemas sas
 
Aplicaciones para sistemas distribuidos slide
Aplicaciones para sistemas distribuidos slideAplicaciones para sistemas distribuidos slide
Aplicaciones para sistemas distribuidos slide
 
Acceso a-una-base-de-datos-mediante-un-servidor
Acceso a-una-base-de-datos-mediante-un-servidor Acceso a-una-base-de-datos-mediante-un-servidor
Acceso a-una-base-de-datos-mediante-un-servidor
 
Manual Visual Basic .NET SQL Server paso a paso
Manual Visual Basic .NET SQL Server paso a pasoManual Visual Basic .NET SQL Server paso a paso
Manual Visual Basic .NET SQL Server paso a paso
 
Practica Seis Delphi
Practica Seis DelphiPractica Seis Delphi
Practica Seis Delphi
 
(Manual de instalación de cloud computing)
(Manual de instalación de cloud computing)(Manual de instalación de cloud computing)
(Manual de instalación de cloud computing)
 
Manual de instalacion de mysql Server mysql-workbench-xamp server
Manual de instalacion de mysql Server mysql-workbench-xamp server Manual de instalacion de mysql Server mysql-workbench-xamp server
Manual de instalacion de mysql Server mysql-workbench-xamp server
 
instalacion e intregracion de OcsInventory-NG y GLPI
instalacion e intregracion de OcsInventory-NG y GLPIinstalacion e intregracion de OcsInventory-NG y GLPI
instalacion e intregracion de OcsInventory-NG y GLPI
 
Implementación del Ejemplo de Stored Procedures y Triggers en PHP
Implementación del Ejemplo de Stored Procedures y Triggers en PHPImplementación del Ejemplo de Stored Procedures y Triggers en PHP
Implementación del Ejemplo de Stored Procedures y Triggers en PHP
 

More from yanburbano

CURRICULO COMO CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL Y POLITICO
CURRICULO COMO  CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL  Y POLITICOCURRICULO COMO  CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL  Y POLITICO
CURRICULO COMO CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL Y POLITICO
yanburbano
 
Mapa Conceptual
Mapa ConceptualMapa Conceptual
Mapa Conceptual
yanburbano
 
Actualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHPActualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHP
yanburbano
 
Proyecto ritrick
Proyecto ritrickProyecto ritrick
Proyecto ritrick
yanburbano
 

More from yanburbano (16)

Curso php - capitulo 2
Curso php - capitulo 2Curso php - capitulo 2
Curso php - capitulo 2
 
Curso HTML desde Cero - Capítulo 1
Curso HTML desde Cero - Capítulo 1Curso HTML desde Cero - Capítulo 1
Curso HTML desde Cero - Capítulo 1
 
Curso php - capitulo 1 (introducción)
Curso php - capitulo 1 (introducción)Curso php - capitulo 1 (introducción)
Curso php - capitulo 1 (introducción)
 
Propuesta de aula
Propuesta de aulaPropuesta de aula
Propuesta de aula
 
CURRICULO COMO CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL Y POLITICO
CURRICULO COMO  CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL  Y POLITICOCURRICULO COMO  CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL  Y POLITICO
CURRICULO COMO CAMPO Y COMO ASUNTO PEDAGOGICO, SOCIAL, CULTURAL Y POLITICO
 
Conceptos
ConceptosConceptos
Conceptos
 
Conceptos
ConceptosConceptos
Conceptos
 
Conceptos
ConceptosConceptos
Conceptos
 
Mapa Conceptual
Mapa ConceptualMapa Conceptual
Mapa Conceptual
 
Tutorial efecto tipográfico
Tutorial efecto tipográficoTutorial efecto tipográfico
Tutorial efecto tipográfico
 
Actualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHPActualizar datos de una tabla. MYSQL y PHP
Actualizar datos de una tabla. MYSQL y PHP
 
Proyecto ritrick
Proyecto ritrickProyecto ritrick
Proyecto ritrick
 
Programación orientada a objetos II
Programación orientada a objetos IIProgramación orientada a objetos II
Programación orientada a objetos II
 
PROGRAMACIÓN ORIENTADA A OBJETOS I (PHP)
PROGRAMACIÓN ORIENTADA A OBJETOS I (PHP)PROGRAMACIÓN ORIENTADA A OBJETOS I (PHP)
PROGRAMACIÓN ORIENTADA A OBJETOS I (PHP)
 
Efecto imagen dibujada a lápiz
Efecto imagen dibujada a lápizEfecto imagen dibujada a lápiz
Efecto imagen dibujada a lápiz
 
Introducción a programación con PHP
Introducción a programación con PHPIntroducción a programación con PHP
Introducción a programación con PHP
 

Recently uploaded

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Recently uploaded (11)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 

vAplicación parte 1

  • 1. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com EJEMPLO DESARROLLO DE UNA APLICACIÓN CON PHP En esta oportunidad comenzaremos un ejemplo que será muy cercano a todo el proceso de desarrollo de una aplicación. La aplicación que desarrollaremos será la siguiente: Descripción Proyecto La empresa ABC se dedica a la compra y venta de celulares y televisores. Para ello tiene empleados que se encargan de realizar todo el proceso de registro y gestión en general de la compra de celulares y televisores. El gerente quiere tener una aplicación que le permita tener un control sobre su negocio. Él quiere que su aplicación le permita tener control sobre los asesores de ventas o empleados que se encargan a su vez de gestionar todo lo concerniente a un teléfono móvil y televisores. El gerente quiere ver reportes y quiere que su aplicación sea para plataformas web. Análisis Tomando en cuenta el caso anterior y después de haberme reunido con el gerente decidí crear la aplicación. Para ello lo primero que haré es crear todo el diseño y configuración de la base de datos. Iniciare como primer paso el servidor de aplicaciones con EasyPHP. Luego accederé al servidor por medio del localhost Daré clic en el icono de la casa. Y seguidamente clic en open para ir a mi base de datos.
  • 2. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Nos abre la pantalla de phpmyadmin donde crearemos la base de datos y las respectivas tablas. Lo primero que haremos y antes de cualquier cosa es crear todas las tablas de la base de datos. Tomando en cuenta la descripción del proyecto se me ocurre crear las siguientes tablas: 1. Empleado 2. Televisor 3. Celular 4. Administrador 5. Perfil De las tablas anteriormente nombradas solo el empleado y el administrador tendrán la posibilidad de ingresar al sistema por medio de un login y un password. Le definiremos los atributos a cada tabla: Tomando como referencia este prediseño vamos a crear nuestra base de datos con el Sistema Gestor de Base de Datos MySQL. Vamos a nuestro phpmyadmin que habíamos abierto previamente.
  • 3. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Clic en Base de datos. Le colocamos el nombre y presionamos crear La buscamos en la base de datos que nos aparece para dar clic y poder empezar a trabajar en ella. Y comenzamos a crear todas las tablas que requerimos en nuestro proyecto tomando como base mi prediseño anterior. Comenzaremos creando la tabla perfil.
  • 4. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Luego creamos la tabla empleado que tiene 6 campos y no tendrá para este ejemplo campos autoincrementables ya que la cedula hará las veces de llave primaria. Seguimos con la tabla administrador. Y terminamos creando las tablas televisor y celular. Estas dos si tienen una llave primaria autoincrementable. Televisor
  • 5. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Celular Tomando en cuenta esto que acabo de hacer ya tengo mi base de datos creadas con las tablas. Solo me falta la definir la llave foránea para la tabla administrador y la tabla empleado que tienen un campo llamado perfil que es la llave foránea que me conectará con la tabla que también se llama perfil. Para ello vamos a la tabla empleado. A la estructura. Damos clic en el campo perfil que es la llave foránea ya que ella me comunicará con el código de la tabla perfil.
  • 6. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Y damos clic en OK. Hacemos el mismo proceso con la tabla Administrador. Ahora vamos a dar clic en la opción SQL que me permite ingresar código SQL. Y agregaremos estas sentencias que me permiten generar las relaciones de mis tablas empleado y administrador con la tabla perfil.
  • 7. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Esto quiere decir que mi campo en la tabla empleado que se llama perfil y que acabo de definir como llave foránea hace referencia al campo llamado código de mi tabla perfil. De esta manera conecto mi tabla perfil con mi tabla empleado. Ahora hago el mismo proceso con la tabla administrador. Y en ambos casos presionamos continuar. Ahora voy a agregar de forma manual los perfiles que existirían para mi aplicación. Clic en la tabla perfil y luego en insertar.
  • 8. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com Y doy clic en el continuar que está en la parte inferior de la imagen. Reviso que los datos si hayan sido registrados. Con esto ya quedará totalmente lista nuestra configuración de las tablas para nuestro proyecto de software.
  • 9. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com El script completo de esta base de datos es el siguiente: -- phpMyAdmin SQL Dump -- version 4.1.4 -- http://www.phpmyadmin.net -- -- Servidor: 127.0.0.1 -- Tiempo de generación: 17-09-2014 a las 07:57:59 -- Versión del servidor: 5.6.15-log -- Versión de PHP: 5.4.24 SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; -- -- Base de datos: `databasetienda` -- -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `administrador` -- CREATE TABLE IF NOT EXISTS `administrador` ( `cedula` int(100) NOT NULL, `nombre` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `email` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `usuario` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `password` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `perfil` int(100) NOT NULL, PRIMARY KEY (`cedula`), KEY `perfil` (`perfil`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci; -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `celular` -- CREATE TABLE IF NOT EXISTS `celular` ( `codigo` int(100) NOT NULL AUTO_INCREMENT, `marca` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `tamano` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `color` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `descripcion` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, PRIMARY KEY (`codigo`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci AUTO_INCREMENT=1 ; -- --------------------------------------------------------
  • 10. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com -- -- Estructura de tabla para la tabla `empleado` -- CREATE TABLE IF NOT EXISTS `empleado` ( `cedula` int(100) NOT NULL, `nombre` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `email` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `usuario` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `password` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `perfil` int(100) NOT NULL, PRIMARY KEY (`cedula`), KEY `perfil` (`perfil`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci; -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `perfil` -- CREATE TABLE IF NOT EXISTS `perfil` ( `codigo` int(100) NOT NULL AUTO_INCREMENT, `descripcion` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, PRIMARY KEY (`codigo`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci AUTO_INCREMENT=1002 ; -- -- Volcado de datos para la tabla `perfil` -- INSERT INTO `perfil` (`codigo`, `descripcion`) VALUES (1000, 'Empleado'), (1001, 'Administrador'); -- -------------------------------------------------------- -- -- Estructura de tabla para la tabla `televisor` -- CREATE TABLE IF NOT EXISTS `televisor` ( `codigo` int(100) NOT NULL AUTO_INCREMENT, `marca` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `tamano` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `color` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, `descripcion` varchar(200) COLLATE utf8mb4_spanish_ci NOT NULL, PRIMARY KEY (`codigo`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_spanish_ci AUTO_INCREMENT=1 ;
  • 11. Yan David Burbano Amariles Ingeniero de Sistemas www.davidamariles.com -- -- Restricciones para tablas volcadas -- -- -- Filtros para la tabla `administrador` -- ALTER TABLE `administrador` ADD CONSTRAINT `administrador_ibfk_1` FOREIGN KEY (`perfil`) REFERENCES `perfil` (`codigo`); -- -- Filtros para la tabla `empleado` -- ALTER TABLE `empleado` ADD CONSTRAINT `empleado_ibfk_1` FOREIGN KEY (`perfil`) REFERENCES `perfil` (`codigo`); /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; En el próximo post seguiremos con el desarrollo del proyecto, lo que haremos es pensar que pantallas necesitamos y que clases debemos crear, ya que nuestra aplicación se desarrollará bajo el paradigma de programación orientada a objetos.