Búsqueda de archivos
Publicado: 2016-04-25 12:10 @549
Estimados, tengo un problema. En el siguiente script pretendo buscar los archivos PDF de unas facturas que estoy rescatando de la BD. El tema es que si bien en la BD tengo varios números de factura el script siempre me imprime el primer PDF que encuentra:
Si tengo las facturas 1010, 1020, 1030 y 1040 en la BD, al ejecutar el script me muestra lo siguiente:
INV000001010.pdf
INV000001010.pdf
INV000001010.pdf
INV000001010.pdf
siendo que para las demás facturas también hay archivos pdf, me repite la primera factura encontrada.
Using perl Syntax Highlighting
- #!/usr/bin/perl
- use DBI;
- use File::Find;
- my $database = "FACTURAS";
- my $data_source= "DBI:mysql:$database;" ;
- my $username = "usuariodb";
- my $password = "db2016";
- my $sql = DBI->connect($data_source,$username,$password)
- or die "Couldn't connect to database: " . DBI->errstr;
- $arrayI= $sql -> prepare ("SELECT fac_numero FROM Factura")
- or die $sql->errstr();
- $arrayI->execute() or die $arrayI->errstr();
- while(my @rowI = $arrayI->fetchrow_array)
- {
- $NUMERO_FACTURA=@rowI[0];
- $DIR="PDF/IN";
- find(\&buscar, $DIR);
- sub buscar{
- my $elemento = $_;
- if(-f $elemento && $elemento =~ /$NUMERO_FACTURA.pdf$/)
- {
- print "$File::Find::name\n";
- }
- }
- }
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Si tengo las facturas 1010, 1020, 1030 y 1040 en la BD, al ejecutar el script me muestra lo siguiente:
INV000001010.pdf
INV000001010.pdf
INV000001010.pdf
INV000001010.pdf
siendo que para las demás facturas también hay archivos pdf, me repite la primera factura encontrada.