Return to Snippet

Revision: 24268
at February 24, 2010 17:42 by ginoplusio


Initial Code
function pingomatic($title,$url,$debug=false) {
	$content='<?xml version="1.0"?>'.
		'<methodCall>'.
		' <methodName>weblogUpdates.ping</methodName>'.
		'  <params>'.
		'   <param>'.
		'    <value>'.$title.'</value>'.
		'   </param>'.
		'  <param>'.
		'   <value>'.$url.'</value>'.
		'  </param>'.
		' </params>'.
		'</methodCall>';

	$headers="POST / HTTP/1.0
".
	"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1) Gecko/20090624 Firefox/3.5 (.NET CLR 3.5.30729)
".
	"Host: rpc.pingomatic.com
".
	"Content-Type: text/xml
".
	"Content-length: ".strlen($content);

	if ($debug) nl2br($headers);

	$request=$headers."

".$content;
	$response = "";
	$fs=fsockopen('rpc.pingomatic.com',80, $errno, $errstr);
	if ($fs) { 
		fwrite ($fs, $request); 
		while (!feof($fs)) $response .= fgets($fs); 
		if ($debug) echo "<xmp>".$response."</xmp>";
		fclose ($fs);
		preg_match_all("/<(name|value|boolean|string)>(.*)<\/(name|value|boolean|string)>/U",$response,$ar, PREG_PATTERN_ORDER);
		for($i=0;$i<count($ar[2]);$i++) $ar[2][$i]= strip_tags($ar[2][$i]);
		return array('status'=> ( $ar[2][1]==1 ? 'ko' : 'ok' ), 'msg'=>$ar[2][3] );
	} else { 
		if ($debug) echo "<xmp>".$errstr." (".$errno.")</xmp>"; 
		return array('status'=>'ko', 'msg'=>$errstr." (".$errno.")");
	} 
}

Initial URL
http://www.barattalo.it/2010/02/24/ping-pingomatic-com-services-with-php/

Initial Description
This function calls pingomatic rpc service to increase traffic to your site. More info and instructions on [Barattalo blog](http://www.barattalo.it/2010/02/24/ping-pingomatic-com-services-with-php/ "read this post").
.

Initial Title
Call ping-o-matic service with PHP

Initial Tags
web, service

Initial Language
PHP