You've been told to use CGI.pm now here's how you might do it - given that you have a form like :
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:<!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>
#!/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\
In reply to Re: File upload from browser + text data
by gellyfish
in thread [untitled node, ID 155208]
by Samn
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |