#!/usr/bin/env perl use strict; use warnings; use CGI qw/:standard/; use CGI::Carp qw/fatalsToBrowser warningsToBrowser/; if (!param){ print header; warningsToBrowser(1); print start_html('Upload an image'); print start_multipart_form; print filefield(-name=>'file', -size=>100); print br; print submit(-name=>'Upload image'); print end_form; print end_html; } else { my $file = param('file'); open my $img, '>', 'temp.jpg' or die "Cannot open temp.jpg for write: $!"; my $buffer; while (my $num = read($file, $buffer, 1024)){ print $img $buffer; } close $img; print header('image/jpeg'); open my $temp, '<', 'temp.jpg' or die "Cannot open temp.jpg for read: $!"; while (my $num = read($temp, $buffer, 1024)){ print $buffer; } close $temp; }