Actualizado el 22 de Junio del 2017 (Publicado el 15 de Enero del 2017)
1.356 visualizaciones desde el 15 de Enero del 2017
368,9 KB
99 paginas
Creado hace 21a (20/01/2004)
Proyecto Final de Carrera
Raquel Boullón Garzón
Plácido Rodríguez Laredo
Profesor: Sebastià Vila
Ing. Téc. en Telecomunicaciones, esp en Sistemas Electrónicos
ÍNDICE
BLOQUE I : Objetivos y entorno de trabajo
1. Objetivo
2. Elementos de trabajo
2.1. Servidor
2.1.1. Sistema Operativo
2.1.2. Servidor web
2.1.3. Servidor telnet
2.1.4. Servidor ftp
2.1.5. Servidor de correo
2.2. Conexión con CERVI, S.A.
1
2
2
2
3
4
5
6
8
3. Lenguajes para el desarrollo web
3.1. PHP
3.2. Estandard SQL.
3.3. Estandares para el diseño web
3.1.1. Ventajas e inconvenientes de PHP
3.1.2. PHP vs ASP
11
11
11
12
13
14
3.3.1. Estandars de html. 14
15
15
16
17
3.3.1.1. HTML 4 y HTML 4.01
3.4. Estandares de Javacrip
3.4.1. Problemas entre versiones
3.3.2. Estandars de css
BLOQUE II : Creación de la base de datos
4. Conceptos básicos de bases de datos
5. Características de los diferentes gestores de bases de datos
existentes en el mercado
5.1. Mysql 3.XX.XX
5.2. PostgreSql 7.3
5.3. Interbase 6.0
5.4. Sap DB 7.2
5.5. Microsoft Sql Server
5.6. Oracle
5.7. Comparativas
5.7.1. Comparativa de características
5.7.2. Comparativa de rendimientos
18
20
20
21
22
22
23
24
25
25
27
5.8. Conclusion
6. Mysql: La opción escogida
6.1. Claves Primarias
6.2. Claves Foráneas
6.3. Tipos de tablas en Mysql
6.4. Mysqladmin: El Administrador de Mysql
7. Diseño y creación de la base de datos
7.1. Diseño Conceptual
7.1.1 Diagrama ER
7.2. Diseño lógico
7.3. Diseño Físico
BLOQUE III : Aplicación para la gestión de la base de datos
8. Sistema de gestión de la base de datos
8.1. Arquitectura de la aplicación
8.2. Aplicaciones principales
8.2.1. Validación de usuarios
8.2.2. Gestión de artículos
8.2.3. Gestión de fabricantes
8.2.4. Gestión de categorias/tipos
8.2.5. Gestión de ofertas
8.2.6. Gestión de pedidos
8.2.7. Gestión de usuarios
8.2.8. Gestión de eventos
8.2.9. Gestión de descuentos
8.2.10. Gestión de clientes
8.3. Aplicaciones de soporte
8.4. Medidas de seguridad
8.4.1. La seguridad a nivel de usuarios
8.4.2. La seguridad a nivel de canal
8.4.3. La seguridad a nivel de programación
8.5. Diferencias con los estandars
BLOQUE IV : Creación del Web Site
9. WebSite
9.1. La Portada
9.2. Quienes somos
9.3. Web Técnica
31
33
33
33
35
47
38
40
45
47
50
52
52
53
53
54
55
56
56
57
58
59
59
60
61
62
62
64
65
67
69
69
71
72
9.4. El buscador y el catálogo de artículos
9.5. Zona de acceso de Clientes
BLOQUE V : Conclusiones y Trabajo futuro
10. Conclusiones
11. Trabajo futuro
BLOQUE VI : Bibliografía
12. Bibliografía.
ANEXOS
I.
II.
Esquema de la base de datos
Leyes y legislaciones.
73
76
77
78
79
i
v
BLOQUE I
Objetivos y
entorno de trabajo
MEMORIA
1. Objetivos.
El objetivo de este proyecto tiene como finalidad la creación de un web site para la empresa
Cervi, S.A., una de las firmas más importantes del sector de la distribución de cables
eléctricos y componentes para comunicaciones en nuestro país.
Somos conscientes de que la implementación de un proyecto de tal envergadura se tiene
que llevar a cabo en diversas fases o etapas, pues hay que ver la aceptación por parte de los
clientes y analizar los resultados de cada fase.
Las fases de implantación serían las siguientes:
- Primera fase: diseño de la base de datos, diseño y creación del sistema de gestión de
la base de datos, diseño general del web site y creación de un catálogo digital
accesible desde la web.
- Segunda fase: Implementación de un carrito de la compra únicamente para clientes
de Cervi, S.A. No se realizarán transferencias bancarias y los pedidos generados se
contabilizarán por las vías habituales de Cervi, S.A.
- Tercera fase: Apertura de la tienda virtual al resto de los usuarios de la red y pago
mediante tarjeta electrónica o contra reembolso para los usuarios que no tengan
código de cliente de Cervi, S.A.
Dado que el periodo para la realización del proyecto es de cuatro meses y que nosotros no
somos profesionales del sector es lógico que nuestro proyecto únicamente abarque la
primera fase.
El objetivo de nuestro proyecto pretende llevar a cabo la primera fase de la
implementación, es decir, diseñaremos la base de datos y la crearemos, crearemos un
sistema de gestión para mantener la base de datos y diseñaremos un website con un
catálogo digital accesible desde la web.
2. Entorno de trabajo
En este punto describiremos las características básicas de nuestro servidor. Daremos
detalles sobre el servidor web, el servidor telnet, servidor de ftp y el servidor de correo,
también explicaremos como esta estructurada la red de cervi, así como las modificaciones
realizadas en los ficheros de configuración.
2.1 El servidor
2.1.1 El sistema operativo.
EL sistema operativo que hemos escogido para nuestro servidor es un Caldera Open Linux
de SCO, concretamente la versión 2.3, una configuración de linux para aplicaciones
comerciales.
Este es el sistema que utiliza Cervi, S.A. en el resto de sus servidores por lo que nuestra
decisión del sistema estaba ya condicionada. Además este sistema tiene otra característica
que nos hizo decidirnos por esta configuración en vez de otras configuraciones más
comerciales como Suse: es totalmente gratuito, no requiere de licencia y el numero de
usuarios no está limitado.
Linux es un sistema operativo de código libre basado en unix. Que sea de código libre
significa que es gratuito (sólo algunas configuraciones) y que es desarrollado
simultáneamente por millones de usuarios alrededor del mundo.
Un sistema linux está basado en un kernel o nucleo que permite que el software y el
hardware trabajen juntos. Las tres funciones más importantes, aunque no las únicas, son:
- Administración de la memoria para todos los programas en ejecución.
- Administración del tiempo de procesador que utilizan los programas en ejecución.
- Acceso cómodo a los periféricos
Es un sistema mutiusuario y multitrea. El usuario principal es root que es el usuario que
tiene todos los permisos de ejecución, por lo tanto puede borrar, crear e instalar sin ningún
tipo de restricción.
Nuestra distribución esta configurada como servidor web mediante APACHE, servidor de
mysql y servidor de correo con el Sendmail. Además puede ejercer las funciones de
administrador de ficheros compartidos en una red local aunque es una característica en la
que nosotros no entramos ya que las características del proyecto no lo requieren.
El interfaz gráfico utilizado es Xwindows que es un sistema basado en dos aplicaciones:
- El servidor X que es el que se encarga realmente de dibujar en la pantalla.
- Gestor de ventanas: Kde o Gnome.
En nuestro caso el gestor de ventanas es Kde, concretamente la primera versión. Gnome es
más utilizado en otras distribuciones como Red Hat.
2.1.2 El servidor Web.
Una vez más el software utilizado por Cervi, S.A. fuerza nuestra decisión sobre este
aspecto. Lo que intentaremos explicar en esta sección es porque Cervi, S.A. escogió este
servidor web: Apache 1.3.9.
Apache es el servidor web más usado en servidores Unix/Linux, aproximadamente el 40%
de la cuota de mercado, básicamente por dos motivos:
- Es libre.
- Es robusto y sencillo de manejar.
Apache es realmente sencillo de instalar y el software esta disponible en dos formatos:
precompilado y el código fuente para compilar. Además las versiones precompiladas están
disponibles par la mayoría de sistemas operativos existentes en el mercado (FreeBSD,
Linux, Solaris, Windows, Unix, etc...).
Es fácilmente configurable ya que solo requiere pequeñas modificaciones en tres archivos,
y esto en el peor de los casos. Lo normal es añadir el directorio donde estarán alojadas
todas las paginas disponibles y añadir algún modulo (en nuestro caso php3) que no viene
configurado por defecto.
Para este proyecto sólo modificamos el archivo httpd.conf que se encuentra en el directorio
etc /httpd/conf, a continuación detallamos las modificaciones.
##
## httpd.conf -- Apache HTTP server configuration file
##
[...]
Primero añadimos el modulo para la compilación de php.
<IfDefine PHP>
Include /etc/httpd/conf/modules/mod_php.conf
</IfDefine>
Definimos el puerto por defecto.
# Port: The port to which the standalone server listens. For
# ports < 1023, you will need httpd to be run as root initially.
#
Port 80
Definimos el usuario. Al definirlo como nobody
otras
característica del sistema, como crear o eliminar archivos, ya que este usuario tiene pocos
privilegios.
restringimos
el
acceso
a
# User/Group: The name (or #number) of the user/group to run httpd as.
# . On SCO (ODT 3) use "User nouser" and "Group nogroup".
# . On HPUX you may not be able to use shared memory as nobody, and the
# suggested workaround is to create a user www and use that user.
# NOTE that some kernels refuse to setgid(Group) or semctl(IPC_SET)
# when the value of (unsigned)Group is above 60000;
# don't use Gr
Comentarios de: Comparativa SQL (0)
No hay comentarios