Login   Register  
PHP Classes
elePHPant
Icontem

File: client.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of tuhin  >  API  >  client.php  >  Download  
File: client.php
Role: Example script
Content type: text/plain
Description: This is client site php module
Class: API
Receive and reply to Web services requests
Author: By
Last change:
Date: 2009-12-17 20:53
Size: 3,640 bytes
 

Contents

Class file image Download
<?php
/*
 * Created on 2008/12/03
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */

if($HTTP_RAW_POST_DATA){
$xml trim($HTTP_RAW_POST_DATA);  // get rid of excess white space that may or may not be present
//print_r($xml);
 /* Set _tag variables to the position in the file where it can be found
  the strpos() function returns false on failure to find the given string
  Since this is our API, we know what to look for and what is needed
 */
 
$myXML_tag strpos($xml"<myXML>"); // 7 - this is the string length
 
$function_tag strpos($xml"<function>"); // 10
 
$orderID_tag strpos($xml"<orderID>"); // 9
 
$reference_tag strpos($xml"<reference>"); // 11

 
  
$j $function_tag 10;
  
// grab the first char after the open tag
  
$function substr($xml$j1); 
  
  
/*
   grab the characters until you hit a '<'.  Note in your manual that you write with your API that '<' characters will cause a fault.  It is your API so, you can do whatever you want!  Technically, you're only bound by the rules of the XML language.
  */
  
for ($i $j 1substr($xml$i1) != "<"$i++) {
   
$function .= substr($xml$i1);
  }

  
$j $orderID_tag 9;
  
$orderID substr($xml$j1);
  
  for (
$i $j 1substr($xml$i1) != "<"$i++) {
   
$orderID .= substr($xml$i1);
  }
  
  
$j $reference_tag 11;
  
$reference substr($xml$j1);
  for (
$i $j 1substr($xml$i1) != "<"$i++) {
   
$reference .= substr($xml$i1);
  }

  
  
  
$xml = new DOMDocument('1.0');
    
//$xml = domxml_new_doc("1.0");

  // create the elements
  
$root $xml->createElement("myXML");
  
$values $xml->createElement("values");
  
$id $xml->createElement("orderID");
  
$ref $xml->createElement("reference");
  
$response $xml->createElement("response");
  
$order $xml->createElement("order");

  
// create the text nodes
  
$id_txt $xml->createTextNode($orderID);
  
$ref_txt $xml->createTextNode($reference);
  
$ord_txt $xml->createTextNode("confirmed");
  
   
$root $xml->appendChild($root);
  
$values $root->appendChild($values);
  
$id $values->appendChild($id);
  
$id_txt $id->appendChild($id_txt);
  
$ref $values->appendChild($ref);
  
$ref_txt $ref->appendChild($ref_txt);
  
$response $root->appendChild($response);
  
$order $response->appendChild($order);
  
$ord_id $order->appendChild($ord_txt);
  
  
$xml $xml->saveXML();

    
    
  
$File "THIS XML PAHT /api/built.xml";
    
$fp fopen($File"wr");
      
fwrite($fp$xml);
      
fclose($fp);
      
print_r($orderID);
print_r("<br>");
print_r($reference);
print_r("<br>");
header("Location : http:// YOUR SERVER NAME /api/builtt.xml");
require_once(
"result.php");
exit;
}else{
 
 
$request '<?xml version="1.0"?> 
<myXML>
<function>order</function>
<values>
<orderID>RR123</orderID>
<reference>235646</reference>
</values>
</myXML>
'
;

$server "CONNECT SERVER NAME ";
$url 'http://CONNECT SERVER NAME /api/my_server.php'// THIS URL FROM WHICH YOU WANT SEND AND GET INFORMATION 

$content_length strlen($request); 
$headers"POST $url HTTP/1.0\r\nContent-type: text/xml\r\nHost: $server\r\nContent-length: $content_length\r\n\r\n"
$fp fsockopen($server80$errno$errstr30); 
if (!
$fp) return false
fputs($fp$headers); 
fputs($fp$request); 
$ret ""
while (!
feof($fp)) { 
$ret.= fgets($fp1024); 

fclose($fp); 
$datas split("\r\n\r\n"$ret2);
$header $datas[0];
$body   $datas[1];
echo 
$body;
exit;

}


?>