DLS HTTP POST - with PHP

//1 - Authenticate with TechNet. The authentication ticket will be stored in $auth_ticket. Note this MUST be HTTPS.
$auth_url = "https://technet.rapaport.com/HTTP/Authenticate.aspx";
$post_string = "username=YOURUSERNAME&password=" . urlencode("YOURPASSWORD");

//create HTTP POST request with curl:
$request = curl_init($auth_url); // initiate curl object
curl_setopt($request, CURLOPT_HEADER, 0); // set to 0 to eliminate header info from response
curl_setopt($request, CURLOPT_RETURNTRANSFER, 1); // Returns response data instead of TRUE(1)
curl_setopt($request, CURLOPT_POSTFIELDS, $post_string); // use HTTP POST to send form data
curl_setopt($request, CURLOPT_SSL_VERIFYPEER, FALSE); // uncomment this line if you get no gateway response.
$auth_ticket = curl_exec($request); // execute curl post and store results in $auth_ticket
curl_close ($request);


//2 - prepare HTTP request for data.

$feed_url = "http://technet.rapaport.com/HTTP/DLS/GetFile.aspx";
$feed_url .= "?ticket=".$auth_ticket; //add authentication ticket:


//prepare to save response as file.
$fp = fopen('c:\rapnetfeed.csv', 'wb');
if ($fp == FALSE)
{
echo "File not opened";
exit;
}

//create HTTP GET request with curl
$request = curl_init($feed_url); // initiate curl object
curl_setopt($request, CURLOPT_FILE, $fp); //Ask cURL to write the contents to a file
curl_setopt($request, CURLOPT_HEADER, 0); // set to 0 to eliminate header info from response
curl_setopt($request, CURLOPT_TIMEOUT, 300); //set timeout to 5 mins
curl_exec($request); // execute curl post
// additional options may be required depending upon your server configuration
// you can find documentation on curl options at http://www.php.net/curl_setopt
curl_close ($request); // close curl object
fclose($fp); //close file;


//Special thanks to David Meyers for helping me to create the sample file. \\ :-) //