#!/usr/local/bin/perl -w use strict; use Carp; use LWP::UserAgent; use LWP::Simple; use HTML::Form; my $site = 'http://linux/release/cgi-bin/htmlformtest.pl'; my $testfile = './testfile.txt'; # # # { if (!-e $testfile) { open (FH, ">$testfile") || die $!; print FH "\nThis is a test file.\n"; print FH "It has been uploaded via HTML::Form\n"; print FH "And it has 5 lines in it.\n\n"; close FH; } my $req = get ($site); die "Eeek! Request failed.\n" if !$req; # # # my $form = HTML::Form->parse ($req, $site); if ($form->find_input ('uploadname')) { $form->value ('uploadname', [$testfile => [$testfile]]); my $userAgent = LWP::UserAgent->new; my $res = $userAgent->request ($form->click); die sprintf ("Eeek! Request failed (%s)\n", $res->status_line) unless ($res->is_success); print "\n", $res->content, "\n"; print "I seem to have uploaded the file OK!\n\n"; } else { die "Eeek! Whatever page we got, didn't have 'uploadname' as a field!\n"; } }