use strict;
use warnings;
use DBI;

# Konfiguration lesen
open(CFG,'<', 'connect-db') or die "Oops: $!\n";
chomp(my $username = <CFG>);
chomp(my $password = <CFG>);
chomp(my $database = <CFG>);
close(CFG);

# Kommandozeile lesen: Id des Bildes Dateipfad
die "Usage: Bild-Id Dateipfad\n" if ($#ARGV != 1);
my $id = shift; 
my $path = shift;

#print "$id - $path\n"; exit;
# Zusammenbauen der Datasource: DBI/Modul/Datenbank/Host
my $dsn = 'DBI:mysql:'.$database.':localhost';

# Nun der Connect
my $dbh = DBI->connect($dsn, $username, $password,
		                   { RaiseError => 1,
		                     PrintError => 1,
		                     AutoCommit => 1}
		                  ) or die "Oops: $DBI::errstr\n";

# Bild aus der Datenbank holen und abspeichern.
# da nur ein Objekt geholt wird --> selectrow_array
my $bild = $dbh->selectrow_array(
                "SELECT Bild FROM Bilder WHERE Id ='"
                . $id . "';") or die $dbh->errstr();

# Bild speichern, bei Windows Binmode nicht vergessen!
open (DAT,'>',$path) or die "Oops: $!\n";
binmode DAT;
print DAT $bild;
close(DAT);

$dbh->disconnect();