Last updated on May 25th, 2016 at 11:59 am

Store Data In Remote Database and Execute a HTTP POST Using PHP CURL

. The information isn’t going to be saved on the localhost database รขโ‚ฌโ€ it needs to be stored in a remote database that I cannot connect directly.I thought about all of the possible solutions for solving this challenge and settled on this flow:

  1. User will submit the form, as usual.
  2. In the form processing PHP, I use CURL to execute a POST transmission to a PHP script on the customer’s server.
  3. The remote script would do a MySQL INSERT query into the customer’s private database.

This solution worked quite well so I thought I’d share it with you. Here’s how you execute a POST using the PHP CURL library.

//extract data from the post
extract($_POST);

//set POST variables
$url = 'http://mydomain.com/postpage.php';
$fields = array(
						'lname'=>urlencode($last_name),
						'fname'=>urlencode($first_name),
						'title'=>urlencode($title),
						'company'=>urlencode($institution),
						'age'=>urlencode($age),
						'email'=>urlencode($email),
						'phone'=>urlencode($phone)
				);

//url-ify the data for the POST
foreach($fields as $key=>$value)
 { $fields_string .= $key.'='.$value.'&';
 }
rtrim($fields_string,'&');

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);

//execute post
$result = curl_exec($ch);

//close connection
curl_close($ch);

Thanks ๐Ÿ™‚

One thought on “Execute a HTTP POST Using PHP CURL”
  1. Hi, interesting post. I have been wondering about this issue,so thanks for sharing. I will definitely be coming back to your site.

Leave a Reply

Your email address will not be published. Required fields are marked *