Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/08/2004, 11:11
Avatar de monoswim
monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Para hacer un historial de imágenes se me ocurren 2 opciones:

1) Guardando las imágenes en un motor de base de datos pero me digiste que no quieres complicarla

2) hacer un directorio de imagenes en donde almacenamos todas las imágenes y luego cremos un .TXT en donde almacenamos toda la info sobre esa imagen, como la URL, el nombre de la imagen, la descripción, el ancho el alto...etc.

Te recomiendo la segunta opción...Para generar la base de datos te muestro un script que uso yo...

Código:
#!c:/perl/bin/perl.exe

# abre el directorio raiz de imágenes, abre uno a uno los distintos subdirectorios
# y lista todas las imágenes que haya en el directorio, calculando su url y
# sus dimensiones para cargarlos en la base de datos .TXT

use strict;
use Image::Size;

        # # # D E F I N I C I O N E S # # #
my (@directorios,$directorio,$sub_directorio,@imagenes,$imagen,$ancho,$alto,$img_url);
my ($registro,$string_max_length,$registro_length);

my $directorio_padre = '../../htdocs/imagenes/c/';

print "Content-type: text/html\n\n";
&db_generator();
exit(1);


sub db_generator {

opendir (DATABASEDIR, "$directorio_padre") || &error('abrir','directorio');
@directorios = readdir (DATABASEDIR);
closedir(DATABASEDIR) || &error('cerrar','directorio');

shift(@directorios);
shift(@directorios);

foreach $directorio (@directorios){
         $sub_directorio = $directorio_padre . '/' . $directorio;
         opendir (DATABASEDIR, "$sub_directorio") || &error('abrir','directorio');
         @imagenes = readdir (DATABASEDIR);
         closedir(DATABASEDIR) || &error('cerrar','directorio');

         shift(@imagenes);
         shift(@imagenes);

         $imagen;
         foreach $imagen (@imagenes){
                  $img_url = $sub_directorio . '/' . $imagen;
                  ($ancho,$alto) = imgsize($img_url);
                  $registro = "$imagen||$directorio||$ancho||$alto||lugar||descripcion||autor||";
                  $string_max_length = '----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------';
                  $registro_length = length($registro);
                  substr($string_max_length,0,$registro_length,$registro);

                  print $string_max_length . "\n";
         }
}
}

#####################################################

sub db_ordenar{
############################### O r d e n a r - l a - b a s e - d e - d a t o s
open (DATABASE, "<img_c_db.txt") || &error('abrir','archivo');
my @registros = <DATABASE>;
close (DATABASE) || &error('cerrar','archivo');

@registros = sort @registros;

   my $registro;
   foreach $registro (@registros){
       $registro =~ s/\n//g;
       print $registro . "\n";
   }
###############################################################################
}
#####################################################


sub error{
 print "Content-type: text/html\n\n";
 print "Error: Cant $_[0] the $_[1]";
 exit(1);
}
Espero que te sirva...Saludos
__________________
Esteban Quintana