Sample code for 30+ languages & platforms
PHP ActiveX

HTTPS PUT application/x-www-form-urlencoded

See more HTTP Examples

Demonstrates two ways of sending an HTTPS PUT application/x-www-form-urlencoded request.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

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

$http = new COM("Chilkat.Http");

// The 1st example sends a PUT with the query params in the URL.
// The body of the request will be empty.
$url = 'https://example.com/leads/12345678?uid=XXXX&apikey=YYYYYY&notes=Test_Note';

// Sends the following request:

// PUT /leads/12345678?uid=XXXX&apikey=YYYYYY&notes=Test_Note HTTP/1.1
// Host: example.com
// Accept: */*
// Accept-Encoding: gzip
// Content-Length: 0
// 

$resp = new COM("Chilkat.HttpResponse");
$success = $http->HttpStr('PUT',$url,'','','application/x-www-form-urlencoded',$resp);
if ($success == 0) {
    print $http->LastErrorText . "\n";
    exit;
}

print 'Response status code = ' . $resp->StatusCode . "\n";
print 'Response body: ' . $resp->BodyStr . "\n";

// -----------------------------------------------------------------------
// Now we send the same request, but instead the query params are in the HTTP request body.

$req = new COM("Chilkat.HttpRequest");
$req->HttpVerb = 'PUT';
$req->Path = '/leads/12345678';
$req->AddParam('uid','XXXX');
$req->AddParam('apikey','YYYYYY');
$req->AddParam('notes','Test_Note');

// Sends the following request:

// POST /leads/12345678 HTTP/1.1
// Host: example.com
// Content-Type: application/x-www-form-urlencoded
// Content-Length: 38
// 
// uid=XXXX&apikey=YYYYYY&notes=Test_Notereq.HttpVerb = "POST";
$req->HttpVerb = 'POST';
$req->ContentType = 'application/x-www-form-urlencoded';

$success = $http->HttpReq('https://example.com/leads/12345678',$req,$resp);
if ($success == 0) {
    print $http->LastErrorText . "\n";
    exit;
}

print 'Response status code = ' . $resp->StatusCode . "\n";
print 'Response body: ' . $resp->BodyStr . "\n";

?>