Take a look at either HTTP::Request or HTTP::Request::Form modules. I'm quite positive they will help you. The first module, for example, could be used to send data received from a form by a CGI Perl script to any other HTTP scripts of your choosing by simply creating a couple request objects for each script on two different 'hosts' and 'attaching' the form data with the request.
The other module (the Request::Form one), allows you to submit HTTP forms from inside a Perl script. However, I haven't used it much personally, therefore can't tell more than what the docs say.
Hope this is enough of a push! ;-)
UPDATE: For example, you could make use of a code similar to this:
use CGI;
use LWP::UserAgent;
use HTTP::Request;
my @hosts = qw(
http://www.hosta.com/cgi-bin/scripta.pl
http://www.hostb.com/cgi-bin/scriptb.pl
);
my $cgi = new CGI;
$ua = LWP::UserAgent->new;
my $content = "";
# Build your content here!
# Example,
# build content from form values submitted to this script:
$content = "foo_field=" . $cgi->param('foo_field')
."bar_field=" . $cgi->param('bar_field');
for $host_script (@hosts) {
my $req = HTTP::Request->new (POST => $host_script);
$req->content($content);
# Verify if request was successful..
if ($req->is_success()) {
print "Did well\n";
} else {
print "Didn't do well\n";
}
}
(Althought not tested) this could be the script you submit your form to first. The script will then 're-submit' form data to selected scripts on other hosts.
_____________________
$"=q;grep;;$,=q"grep";for(`find . -name ".saves*~"`){s;$/;;;/(.*-(\d+)
+-.*)$/;
$_=["ps -e -o pid | "," $2 | "," -v "," "];`@$_`?{print"+ $1"}:{print"
+- $1"}&&`rm $1`;
print$\;}
|