datos administrativos

Anuncio
Segundo Obligatorio
PHP – MySQL
DATOS ADMINISTRATIVOS
El trabajo comienza el Jueves 2 de diciembre de 2005 y debe ser entregado (sin
excepciones) el Viernes 23 de diciembre de 2005. La forma de entrega es vía correo
electrónico ([email protected]) en un archivo zip llamado oblig2.zip en el
que se deberán incluir los archivos que se detallan en la letra del obligatorio, con la
estructuración especificada. Cualquier aclaración que deba realizarse debe estar
contenida en el archivo readMe.txt que deberá formar parte del zip entregado
OBJETIVO
El objetivo de este trabajo obligatorio es construir un sitio web para trabajar en el rubro
mascotas. El sitio se llamará MascotaWeb.
En este sitio se podrá
 Visualizar diversas novedades y noticias. Estas se encontrarán en la página
inicial del sitio.
 Comprar productos. En este sitio se venderán diversos productos para loas
mascotas. Por ejemplo, alimentos, platos de comida, shampoo, pulguicidas, etc
 Dar de alta a usuarios. Es una típica página para el registro de usuarios.
 Dar de alta mascotas. Los usuarios registrados en el sitio podrán registrar sus
mascotas. (No es obligatorio que cada uno de los usuarios registrados den de alta
mascotas)
 Buscar mascotas. Por ejemplo, puede utilizarse para buscar parejas entre las
mascotas registradas en el sitio.
IMPLEMENTACIÓN
Deberá existir una página por cada uno de los puntos anteriores, además existirán otras
páginas que se detallarán más adelante.

Visualizar diversas novedades y noticias. Esta es la página inicial (index.php)
del sitio. Para poder visualizar su contenido no es necesario estar loggeado. Se
debe incluir en la página un formulario de loggin en el que los usuarios puedan
loggearse en el sitio. Esta página puede ser un formulario reentrante. El texto de
las novedades y noticias se tomará desde archivos.

Comprar productos. El archivo se llamará carrito.php. Para poder ver el
contenido de este archivo, el usuario debió haberse loggeado en el sitio con
anterioridad. La página consiste en un formulario reentrante, con la estructura
del carrito visto en clase. (se debe desplegar el contenido del carrito y el total de
dinero gastado a medida que se van a agregando productos al carro) Los datos
Página 1 de 5
de los productos a vender se extraerán a partir de una tabla de la base de datos
del sitio

Dar de alta a usuarios. El archivo se llamará registro.php. La página consiste
en un formulario reentrante en el que se deberán ingresar al menos los siguientes
campos:
o Nombre de la persona. (caja de texto)
o Apellido de la persona. (caja de texto)
o Nombre de usuario. (caja de texto)
o Clave y repetición de clave. (cajas de texto)
o Email. (caja de texto)
Se pueden incluir otros campos, pero no se tomarán en cuenta a la hora de
ingresar los datos en la base. (para uniformizar la forma en que se testeará el
trabajo) Los datos se almacenarán en la tabla de la base correspondiente (previa
validación JavaSript y PHP si es necesario) Para poder ver el contenido de este
archivo, el usuario no debe estar loggeado en el sitio.

Dar de alta mascotas. El archivo se llamará altaMascota.php. Para poder ver
el contenido de este archivo, el usuario debió haberse loggeado en el sitio con
anterioridad. La página consiste en un formulario reentrante en el que se podrá
dar de alta una mascota por vez. Los datos a ingresar deben ser:
o Nombre de mascota. Es obligatorio. Se recomienda caja de texto.
o Tipo de mascota. Se refiere a gato, perro, loro, caballo, etc. Es
obligatorio. Se recomienda una lista desplegable.
o Edad. No es obligatorio. Se recomienda caja de texto validando que sea
un número.
o Raza. No es obligatorio. Se recomienda caja de texto.
o Foto. Es obligatorio. Debe ser un control de tipo file.
Se pueden incluir otros campos, pero no se tomarán en cuenta a la hora de ingresar
los datos en la base (para uniformizar la forma en que se testeará el trabajo). Los
datos se almacenarán en la tabla de la base correspondiente (previa validación
JavaSript y PHP si es necesario)

Buscar mascotas. El archivo se llamará buscador.php. Para poder ver el
contenido de este archivo, el usuario debió haberse loggeado en el sitio con
anterioridad. La página consiste en un formulario reentrante en el que se deberán
ingresar los criterios de la búsqueda y de acuerdo a ellos se efectuará la
búsqueda en la base de datos. Los criterios de la búsqueda son:
o Nombre de mascota o de usuario (dueño de la mascota). No es
obligatorio. Se recomienda caja de texto.
o Tipo de mascota. Se refiere a gato, perro, loro, caballo, etc. Es
obligatorio. Se recomienda una lista desplegable.
o Edad de la mascota. Es obligatorio. Se recomienda una lista desplegable
con distintos rangos y una opción “no importa” en el caso de que el
usuario no desee seleccionar la edad.
Una vez efectuada la búsqueda, los resultados deben ser paginados a razón de 5
por página. Los datos a desplegar en los resultados de la búsqueda son:
o Nombre de la mascota
Página 2 de 5
o
o
o
o
o
o
Tipo
Edad (si está disponible el dato)
Raza (si está disponible el dato)
Foto
Nombre del dueño de la mascota
Email del dueño de la mascota
Todas las páginas deberán incluir pie de página de modo de mejorar la navegabilildad
del sitio y un cabezal que incluya al menos el nombre del sitio. Por lo tanto deben
agregarse al menos 2 archivos más a los mencionados anteriormente.
ESTRUCTURA DEL SITIO WEB
Se recomienda una estructuración de los archivos del sitio como la que se muestra a
continuación. (Se podrán agregar otros directorios en caso de que así se desee)
Detalle del contenido de cada uno de los directorios





includes: Contiene los archivos auxiliares, en nuestro caso son el pie y el
cabezal de la página. Podrían agregarse otros, como imágenes, logos, etc.
JS: Contiene los archivos con las funciones para realizar la validación
JavaScript de los diferentes formularios del sitio
lib: Contiene las bibliotecas del sitio. En nuestro caso es imprescindible que
contenga la biblioteca para utilizar la base de datos del sitio. Podrían incluirse
más bibliotecas, por ejemplo, para el envío de correos, para el tratamiento de
archivos, etc, etc.
news: Contiene lor archivos desde los que se leerán las noticias y novedades que
se colocarán en la página inicial del sitio. Estos archivos son HTML. Podrían
contener la noticia en texto plano o bien podrían contener código HTML para
que de este modo se incluyan links, textos en diferentes formatos, etc. Los
nombres de los archivos son news1.html, news2.html, etc, y se colocarán en la
página siguiendo el orden inverso. Es decir, el archivo con número más alto
será la primera noticia desplegada en la página inicial
pics: Contiene las fotos de los archivos correspondientes a las mascotas. Cada
archivo deberá tener un nombre único. Se recomienda que este sea autogenerado
automaticamente. Los archivos deberán ser imágenes y no podrán superar los
100 KB.
Página 3 de 5
ESTRUCTURA DE LA BASE DE DATOS
La base de datos se deberá llamar BDMascota y contendrá las siguientes tablas:
Tablas:
USUARIO (usuario, clave, nombre, apellido, email)
MASCOTA (id, nombre, tipo, edad, raza, pathFoto, propietario)
PRODUCTO (codigo, nombre, descripción, precioUnidad, stock, paisProcedencia)
Observaciones:
Tabla MASCOTA
 El atributo id es autogenerado
 Los atributos nombre, tipo, edad, raza, pathFoto, propietario son strings. El
largo de los strings queda a criterio de cada grupo de estudiantes.
Tabla USUARIO
 Los atributos usuario, clave, nombre, apellido y email son strings. El largo de
los strings queda a criterio de cada grupo de estudiantes.
Tabla PRODUCTO
 El atributo codigo es autogenerado
 Los atributos nombre, descripción y paisProcedencia email son strings. El largo
de los strings queda a criterio de cada grupo de estudiantes.
 El atributo precioUnidad es un númreo real
 El atributo stock es un número entero.
En general
 Al momento de definir las tabla no olvidar de estudiar la permisividad de los
nulos y la definición de índices.
DATOS PROVISTOS
Se proveerá en una semana un juego de datos en formato csv para cargar las tablas.
FORMA DE EVALUACION
La base de datos no se debe entregar. Se probará con una base ya creada con la
estructura idéntica a la detallada anteriormente. Se probará con el usuario root con
contraseña vacía.
POSIBLES MEJORAS





Implementar una pagina para que un usuario administrador pueda subir y/o
editar los archivos correspondientes a las noticias
Agregar una tabla a la base de datos para almacenar las estadísticas de ventas de
los diferentes productos ofrecidos.
Implementar una página para dar de alta en la tabla correspondiente los artículos
ofrecidos por el sitio web.
Tomar en cuenta el atributo stock al momento de la utilización del carrito.
ETC ETC! 
Página 4 de 5
Página 5 de 5
Documentos relacionados
Descargar