UNIDAD 5: REGISTROS Y ARCHIVOS SECUENCIALES

TEMA PERL 8: FILTROS

Otro problema similar al anterior es el de filtros, es decir en muchas ocasiones es necesario obtener informacion acerca de un subconjunto de renglones de el archivo.

Por ejemplo todos los estudiantes que sean mayores de 17 anos, o todos los clientes que sean de Tijuana, etc., a esto le llamamos filtros o condiciones.

Tambien se resuelve de manera similar al anterior, es decir usando un ciclo de lectura de todo el archivo e ir desplegando todos los registros que cumplan la condicion.

Prog24.pl

#! /usr/bin/perl -w
# usando modulo o libreria CGI
use CGI;
# creando el OBJETO de tipo CGI
$q = new CGI;
# mandando servidor los encabezados de la pagina html
print $q->header;
print $q->start_html();
# creando una form o ventana
print $q->startform();
print "EDAD MAYOR> QUE : ";
print $q->textfield('EDAD1','0', 5);
# creando un submit button
print $q->submit('FILTRAR');
# cerrando la forma
print $q->endform();
# cerrando html
print $q->end_html;
if ( $q->param('FILTRAR')) {
# empezando una tabla html
print "<HTML><TABLE Border=10 CellPadding=5><TR>";
# construyendo los encabezados de la tabla
print "<th bgcolor=Green>CLAVE</th><th bgcolor=White>NOMBRE</th><th bgcolor=Red>EDAD</th></TR>";
# abriendo archivo
open(ARCHIVO, "DATOS.DAT") || die "No se pudo abrir archivo";
while(!eof(ARCHIVO)){
# leyendo los campos
$clave=<ARCHIVO>;
$nombre=<ARCHIVO>;
$edad=<ARCHIVO>;
if ( $edad >= $q->param('EDAD1') ) {
print "<TR><TD>"."$clave"."</TD><TD>"."$nombre"."</TD><TD>"."$edad"."</TD></TR>";
};};
print "</TABLE>";
close(ARCHIVO);
};

corrida:

image265.jpg

Como se observa es un problema y una solucion similar al TEMA PERL anterior de busquedas.

TAREAS PROGRAMACION PERL

HACERLES PROGRAMAS DE FILTRADO A LOS ARCHIVOS ANTERIORES, PERO LA CONDICION DE BUSQUEDA FORMARLA CON COMPONENTES HTML DE SELECCION(UNO PARA LA VARIABLE Y OTRO PARA EL OPERADOR RELACIONAL) Y UN COMPONENTE TEXT( PARA EL DATO), ESTO PERMITIRIA QUE SE PUDIERA FILTRAR EL ARCHIVO POR CUALQUIER CAMPO.

Politica de Privacidad