Thread Dateien eines Zip's umbenennen mit Archive::Zip
(3 answers)
Opened by tecker at 2009-10-15 10:07
just to know .. hatte es dann wie folgt gelöst. dateien im Ziparchiv werden umbenannt, mit id versehen, im folder gespeichert, dateiname in DB geschrieben und zip gelöscht. so wie ich es wollte.
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 my $zip = Archive::Zip->new(); my $archive = "$upload_dir/$file"; die "can't read .zip" unless $zip->read($archive) == AZ_OK; my @members = $zip->memberNames; foreach my $member(@members) { my @member_parts = split(/\./,$member); my $file_id = int(rand(10000000)); my $newMemberName = "../fotos/$album/$file_id\."."$member_parts[1]"; my $db_name = "$file_id\."."$member_parts[1]"; $zip->extractMember($member, $newMemberName); my $sql_insert = "INSERT into fotos VALUES('','$db_name','')"; my $prepare_insert = $dbh->prepare( $sql_insert ) || die $dbh->errstr; $prepare_insert->execute() ; $dbh->disconnect(); unlink $member; } unlink $archive; |