http://qs321.pair.com?node_id=665688


in reply to Problem Using POST

The form you want to post to is found in the <form> tag: prep_job.php

So you want to change your request to something like.

my $response = $browser->post( 'http://enm.lobos.nih.gov/prep_job.php', [ "upload"=> ["C:\\protean\\1o1l\\1o1l.pdb"], "jobname"=> "PRT1", "case" => "2", "email" => "email\@gmail.com", "optin" => "true", "upload2"=> ["C:\\protean\\1o1l\\1o1l.pdb"], ], 'Content_Type' => 'form-data', );
grep
One dead unjugged rabbit fish later...

Replies are listed 'Best First'.
Re^2: Problem Using POST
by Joost (Canon) on Feb 02, 2008 at 01:19 UTC
Re^2: Problem Using POST
by Anonymous Monk on Feb 02, 2008 at 14:13 UTC
    When I do it like the way you say, it says no pdb is supplied (which is that upload input type). Is there something I am doing wrong there? (I will also look at mechanize)
Re^2: Problem Using POST
by Anonymous Monk on Feb 02, 2008 at 18:47 UTC
    I also tried this to no use. It still returns "no pdb(the file) uploaded" error.
    #!/usr/bin/perl -w # pl8.pl - query California license plate database use strict; use LWP::UserAgent; use HTTP::Request::Common; use HTTP::Headers; my $browser = LWP::UserAgent->new; my $request = HTTP::Request->new(); my $url="http://enm.lobos.nih.gov/prep_job.php"; my $file="C:/protean/1o1l/1O1L.pdb"; my $response = $browser->request( POST $url, 'Content_Type' => 'form-data', Content=>[ "upload"=> [$file], "jobname"=> "PRT1", "case" => "2", "email" => "sinatureli\@gmail.com", "optin" => "true", "upload2"=> [$file], ], ); die "Error: ", $response->status_line unless $response->is_success; print $response->content; exit;