PHP tutorial for, Post message to another server through fopen and fsockopen in php. When this comes to sending data to server to server we need to post the data using web services.
Many people want to use the curl php method but there are serious issues with that.
Post message to another server through fopen and fsockopen in php
So I recommended to use fopen function to post the message to server to server.
You can use the following code for post the message to another server using fopen and fsockopen
function post($host, $post_url,$port,$data) { $errno = 0; $errstr = ''; $path = str_replace($host,'',$post_url); // IP of minor instance $header_variables = "POST / HTTP/1.1\r\n"; $header_variables .= "Host: $host\r\n"; $header_variables .= "Connection: Close\r\n"; $header_variables .= "Content-Type: application/xml\r\n"; $header_variables .= "Content-Length: " . strlen($data) . "\r\n\r\n"; // establish the connection and send the request $fp = fsockopen($host, $port, &$errno, &$errstr, 15); if ($fp) { stream_set_timeout($fp, 15); fputs($fp, $header_variables); fputs ($fp, $data); //data written fputs ($fp, "\r\n"); //request posted $response = stream_get_contents($fp); $info = stream_get_meta_data($fp); if (!$info['timed_out'] && $fp) { //get response and everything is ok } else { trigger_error('Timed out for '.$post_url); exit(); } fclose($fp); //close the file } else { trigger_error('Failed to open socket connection. '); exit(); } } using CURL function post message also possible for that you can use following code <!--?php /* http://localhost/upload.php: print_r($_POST); print_r($_FILES); */ $ch = curl_init(); $data = array('name' =--> 'Foo', 'file' => '@/home/user/test.png'); curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_exec($ch); ?>