<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test</title>
</head>
<body>
<form method="post" action="/cgi-bin/uptest.cgi" enctype="multipart
+/form-data">
<input type="file" name="uploaded_file" />
<input type="text" name="text_field" />
<input type="submit" name="submit" value="submit" />
</form>
</body>
</html>
Then this code will save the uploaded file and give you the value of the text field - you can have as many text fields or upload fields as you want:
#!/usr/bin/perl -wT
use strict;
use CGI qw(:standard);
use CGI::Carp qw(fatalsToBrowser);
my $fh = upload('uploaded_file');
my $filename = param('uploaded_file');
open OUTFILE, "> /tmp/$filename" or die "/tmp/$filename - $!\n";
print header('text/html'),
start_html(),
p("filename : $filename (saved in /tmp)"),
p("text_field : " . param('text_field'));
while (<$fh>)
{
print OUTFILE $_;
}
print end_html();
/J\ |