Sample code for 30+ languages & platforms
PHP ActiveX Requires Chilkat v11.0.0+

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";

?>