Durante esta práctica, los alumnos serán capaces de:
Esta actividad promueve las siguientes habilidades, valores y actitudes: análisis y síntesis, capacidad de resolver problemas, creatividad, y uso eficiente de la informática y las telecomunicaciones.
NOTA IMPORTANTE: Las actividades de la práctica se pueden elaborar de manera individual o en parejas. El reporte de la práctica de laboratorio debe ser desarrollado de manera individual.
Antes de comenzar esta práctica, renombra tu directorio www
utilizado en la práctica pasada y durante las clases. Desde la línea de comando teclea:
mv www www.backup1
Vuelve a crear otra vez el directorio www
, y sus subdirectorios static
y cgi-bin
.
mkdir www cd www mkdir static mkdir cgi-bin
Con esto estarás iniciando esta práctica con un sitio Web vacío, pero sin necesidad de modificar los archivos de configuración de Apache.
Para instalar el cliente y servidor de MySQL, así como un par de utilerías con una GUI, teclea desde la línea de comando:
sudo apt-get install mysql-server mysql-admin mysql-query-browser
El proceso de instalación te pedirá que indiques en algún momento la contraseña que utilizará el usuario root
de MySQL.
También deberás instalar el módulo MySQLdb
, que permite conectarse a una base de datos de MySQL desde Python. Desde la línea de comando, teclea:
sudo apt-get install python-mysqldb
Para ingresar a la línea de comando de MySQL, se debe correr el siguiente comando:
mysql -u root -p
La opción -u root
indica qué usuario se está conectando, mientras que la opción -p
indica que se debe solicitar la contraseña.
En la línea de comando de MySQL, teclea lo siguiente para crear una nueva base de datos:
create database prueba;
Revisa el siguiente documento para ver cómo acceder a la base de datos desde Python: Writing MySQL Scripts with Python DB-API.
Escribe un script para línea de comando (no CGI), llamado datos_superheroes.py
, que haga lo que se indica a continuación. Dicho archivo debe colocarse dentro del directorio www
.
Sobre la base de datos prueba
, crear una tabla llamada superheroes
con tres columnas:
Superhéroe | Identidad secreta | Sexo |
---|---|---|
Superman | Clark Kent | Masculino |
Hombre Araña | Peter Parker | Masculino |
Boltie | Libby | Femenino |
Capitán América | Steve Rogers | Masculino |
Linterna Verde | Hal Jordan | Masculino |
Mujer Maravilla | Diana Prince | Femenino |
Lobezno | Logan | Masculino |
Batichica | Bárbara Gordon | Femenino |
El Increíble Hulk | Bruce Banner | Masculino |
Mujer Invisible | Susan Storm de Richards | Femenino |
Thor | Donald Blake | Masculino |
Viuda Negra | Natasha Romanoff | Femenino |
Hombre Plancha | Anthony Stark | Masculino |
Batman | Bruno Díaz | Masculino |
Ruby Thursday | Thursday Rubinstein | Femenino |
Escribe un script CGI en Python, llamado super.py
, que despliegue en una tabla de HTML toda la información contenida en la tabla superheroes
de la base de datos prueba
. La información debe aparecer primero en orden de sexo (femenino primero, masculino después) y luego por orden ascendente de identidad secreta. El archivo super.py
debe ir en el directorio www/cgi-bin
.
Verifica que la salida del script sea HTML5 válido utilizando el Servicio de Validación de W3C.
Para entregar tu trabajo individual, sigue las siguientes instrucciones:
reporte_lab2_A0MMMMMMM.txt
, en donde A0MMMMMMM
corresponde a tu matrícula. A partir del código fuente de AsciiDoc debes generar el archivo HTML correspondiente. Dicho archivo se debe llamar reporte_lab2_A0MMMMMMM.html
. Coloca ambos archivos dentro del directorio www
.
www
. Nombra a este archivo mysql.tgz
.
Este archivo se puede crear desde la línea de comando tecleando lo siguiente (asegúrate que te encuentres en el mismo nivel que el directorio www
):
tar czf mysql.tgz www
Fecha límite: Martes, Enero 24.
Esta actividad será evaluada usando los siguientes criterios:
50% | Implementación de los requerimientos. |
---|---|
50% | Reporte de la práctica de laboratorio. |
DA | El programa y/o reporte es un plagio. |