Descargar

Programación de servidores web

Enviado por Pablo Turmero


    edu.red

    1 Indice Common Gateway Interface (CGI) * ¿Qué es? * Ventajas * Desventajas * Documento Html vs Programa CGI * Aplicaciones La aplicacion (consultas sobre una base de datos) Bibliografia

    edu.red

    2 CGI: Common Gateway Interface El protocolo CGI define la forma en que se realizan los intercambios de información entre los clientes y servidores HTTP, y entre estos y las aplicaciones CGI.

    Como un programa CGI es un ejecutable, es equivalente a dejar al mundo ejecutar un programa en tu sistema .

    edu.red

    3 Ventajas del CGI su sencillez, ya que es muy fácil de entender, además de ser un lenguaje de programación independiente, ya que los escritos CGI pueden elaborarse en varios lenguajes.

    es un estándar para usarse en todos los servidores Web, y funcionar bajo una arquitectura independiente, ya que ha sido creado para trabajar con cualquier arquitectura de servidor Web.

    edu.red

    4 Desventajas su eficiencia, debido a que el Servidor Web tiene que cargar el programa CGI y conectar y desconectar con la base de datos cada vez que se recibe una requisición

    edu.red

    5 Documento HTML vs Programa CGI Un documento en HTML que la Web se trae es estático, es decir, se mantiene constante: un fichero de texto que no cambia. Un programa CGI, por otro lado es ejecutado en tiempo real, así que puede generar información dinámica.

    edu.red

    6 Aplicaciones del CGI Permiten recoger y procesar la información que proviene de los formularios HTML. Pueden interpretar las pulsaciones de un usuario sobre un mapa activo. Sirven para generar dinámicamente información, a partir de valores dependientes del entorno Pueden realizar sofisticadas búsquedas sobre una base de datos. ………

    edu.red

    7 La aplicacion Programar un Cgi para realizar consultas sobre una base de datos para saber las notas de los alumnos

    edu.red

    8 La aplicacion Ofrecer un formulario para interrogar la base de datos

    edu.red

    9 La aplicacion Representar los resultados de la consulta en una tabla

    edu.red

    10 Base de datos 2 ficheros que residen en el servidor: Uno de los alumnos Otro de las categorias de los alumnos

    edu.red

    11 Base de datos Fichero de alumnos

    edu.red

    12 Base de datos Fichero de las categorias de alumnos

    edu.red

    13 Definiciones de tipos Categoria de Alumnos

    edu.red

    14 Definiciones de tipos Alumnos

    edu.red

    15 Lectura de ficheros 2 funciones:

    – leerBDCat :: FilePath -> IO BDCat para leer las categorias

    – leerBDAlumno :: FilePath -> IO BDAlumno para leer los alumnos

    edu.red

    16 leerBDCat :: FilePath -> IO BDCat

    edu.red

    17 leerBDAlumno :: FilePath -> IO BDAlumno

    edu.red

    18 perteneceA :: String -> String -> Bool

    edu.red

    19 tablaAlumno :: BDAlumno -> BDCat -> Orden -> Cgi ()

    edu.red

    20 tabla :: Int -> [(String,String,Float)] -> Html ()

    edu.red

    21 dibujar :: Int -> [(String,String,Float)] -> Html()

    edu.red

    22 informacion::BDAlumno -> BDCat -> [(String,String,Float)]

    edu.red

    23 Funciones de comparacion y ordenacion

    edu.red

    24 Funciones de busqueda buscarAlumno :: [String] -> BDAlumno -> Int -> Condicion -> BDAlumno

    edu.red

    25 Fuciones de busqueda buscarAlumno_cat :: [String] -> BDAlumno ->Int -> Condicion -> BDAlumno

    edu.red

    26 Funciones de busqueda buscarAlumno_todos :: [String] -> BDAlumno -> Condicion -> BDAlumno

    edu.red

    27 Funciones de busqueda incluidoEn :: [String] -> String -> Bool incluido_parcial :: [String] -> String -> Bool

    edu.red

    28 Funciones de busqueda busqueda :: [String] -> Int -> Condicion -> Orden -> Cgi()

    edu.red

    29 Fucniones de manejo de categorias

    edu.red

    30 practica :: Cgi ()

    edu.red

    31 Bibliografia http://cdec.unican.es/libro/CGI.htm (CGI en detalles)

    http://www.pangea.org/pacoc/manuales/manual5.htm (tutorial online de CGI)

    http://www.lcc.uma.es/~pepeg/ap/cgis.html (practica propuesta)

    module AP.Cgi.Lib.HTML (modulo implementado en nuestra facultad)