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 laboratotio 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.backup2
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, teclea desde la línea de comando:
sudo apt-get install mysql-server
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) en Python que haga lo siguiente:
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 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.
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_lab3_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_lab3_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, Septiembre 6.
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. |