#!/usr/bin/perl
use strict;
use warnings;
use CGI qw/:standard/;
use Image::Magick;
use File::Copy qw(copy);
$CGI::POST_MAX= 1024 * 10000;
my $zielVerzeichnis = '../../htdocs/images/community/';
my $bildcode = time;
my $filename = param('uploaded_file') || "";
my $filehandle = CGI::upload('uploaded_file');
my $serverfile2 = $zielVerzeichnis . "/" . $bildcode . "_" . $filename;
my $serverFile = $zielVerzeichnis . "/" . (split /[\\\/]/, $filename )[-1];
my $w1 = 600; #b
my $w2 = 400; #m
my $w3 = 120; #s
print header, start_html,
qq~Org. Filename: $filename
Merken Sie sich den Bildcode : $bildcode
\
Datei wird übertragen ...
~;
my $buffer;
open my $out ,">", $serverFile or die $!;
binmode $filehandle;
binmode $out; # Nur relevant fuer Windows-Rechner
while ( read $filehandle,$buffer,1024 ){
print $out $buffer;
}
close $out;
rename $serverFile, $serverfile2;
chmod 0777, $serverfile2;
print "Datei wurde erfolgreich übertragen ...
\n";
my $image = Image::Magick->new;
print "Lese $serverfile2
";
my ($width, $height, $size, $format) = $image->Ping( $serverfile2 );
print <
Höhe: $height
Größe: $size
Format: $format
END
my $h1 = int(($w1 / $width)* $height);
my $image1 = Image::Magick->new;
$image1->Read($serverfile2);
print "Lese $serverfile2";
$image1->Resize(width=>$w1, height=>$h1);
$image1->Set(quality=>70);
$image1->Write("../../htdocs/images/community/test.jpg");
print end_html;