Sample code for 30+ languages & platforms
Perl

HTTP POST (Duplicate Simple HTML Form POST)

Demonstrates how to duplicate a simple HTML form POST.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

$req = chilkat::CkHttpRequest->new();
$http = chilkat::CkHttp->new();

# This example simulates this FORM:
# <form action="echoPost.asp" method="post">
# First name: <input type="text" name="firstName"><br />
# Last name: <input type="text" name="lastName"><br />
# <input type="submit" value="Submit">
# </form>
# The online FORM is found at this URL:
# https://www.chilkatsoft.com/simpleForm.html

# Build an HTTP POST Request:
$req->put_HttpVerb("POST");

# The FORM target is http://www.chilkatsoft.com/processPost.asp
# An easy way of filling out most of the HTTP request object
# is to call SetFromUrl:
$req->SetFromUrl("https://www.chilkatsoft.com/echoPost.asp");

# Send form params using application/x-www-form-urlencoded
$req->put_ContentType("application/x-www-form-urlencoded");

# The only remaining task is to add the params to the 
# HTTP request object:
$req->AddParam("firstName","Matt");
$req->AddParam("lastName","Jones");

# Send the HTTP POST and get the response.
# The POST is being sent to chilkatsoft.com, on port 443 (using TLS)
$domain = "chilkatsoft.com";
$port = 443;
$tls = 1;

# The HTTP POST is sent here:
$resp = chilkat::CkHttpResponse->new();
$success = $http->HttpSReq($domain,$port,$tls,$req,$resp);
if ($success == 0) {
    print $http->lastErrorText() . "\r\n";
    exit;
}

# Display the HTML source of the page returned.
print $resp->bodyStr() . "\r\n";