API Documentation RunningExamples server.get details PHP

Aus EUserv Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
 
(Der Versionsvergleich bezieht 1 dazwischenliegende Version mit ein.)
Zeile 1: Zeile 1:
-
back to [[API Documentation]]
+
back to [[API_Documentation#PHP_EXAMPLE_4|API Documentation]]
-
 
+
= server.get_details =
   <nowiki>
   <nowiki>
<?php
<?php
 +
<?php
 +
//includes the class library
//includes the class library
include_once("lib/xmlrpc.inc");
include_once("lib/xmlrpc.inc");
$xmlrpc_internalencoding = 'UTF-8';
$xmlrpc_internalencoding = 'UTF-8';
 +
$host="api.test.euserv.net";
$host="api.test.euserv.net";
$port=443;
$port=443;
Zeile 12: Zeile 15:
$api_path="/";
$api_path="/";
$srv_id=1337;
$srv_id=1337;
 +
//defines the function
//defines the function
function server_get_details($host,$port,$username,$password,$api_path,$srv_id)
function server_get_details($host,$port,$username,$password,$api_path,$srv_id)
{
{
-
//creates the serverurl
+
 
-
$serverurl = 'https://'.$host.':'.$port.'/'.$api_path;
+
  //creates the serverurl
-
//----------creates the message which will be send to the server----------
+
  $serverurl = 'https://'.$host.':'.$port.'/'.$api_path;
-
//creates the request for the XML-RPC Server
+
 
-
$request = new xmlrpcmsg('server.get_details');
+
  //----------creates the message which will be send to the server----------
-
//adds parameters to the request
+
 
-
$request->addParam
+
  //creates the request for the XML-RPC Server
-
(
+
  $request = new xmlrpcmsg('server.get_details');
-
//creates a value of type struct which contains an array with the username and password
+
 
-
new xmlrpcval
+
  //adds parameters to the request
-
(
+
  $request->addParam
-
array
+
    (
-
(
+
   
-
//creates a value of type string which contains the "$username"
+
    //creates a value of type struct which contains an array with the username and password
-
'login' => new xmlrpcval($username, 'string'),
+
    new xmlrpcval
-
//creates a value of type string which contains the "$password"
+
      (
-
'password' => new xmlrpcval($password, 'string'),
+
      array
-
//creates a value
+
 
-
'srv_id' => new xmlrpcval($srv_id, 'int'),
+
      (
-
)
+
        //creates a value of type string which contains the "$username"
-
,'struct'
+
        'login' => new xmlrpcval($username, 'string'),
-
)
+
       
-
);
+
        //creates a value of type string which contains the "$password"
-
//----------creates the XML-RPC client which represents a client of a XML-RPC server----------
+
        'password' => new xmlrpcval($password, 'string'),
-
//creates the client
+
     
-
$client = new xmlrpc_client($serverurl);
+
        //creates a value
-
//disable SSL Keycheck
+
        'srv_id' => new xmlrpcval($srv_id, 'int'),
-
$client->setSSLVerifyPeer(0);
+
     
-
//----------sends the request to the server and gets the response----------
+
      )
-
//sends the request via https and writes it into $response. timeout is set to 0
+
      ,'struct'
-
$response = $client->send($request,0,'https');
+
      )
-
//generates a storable representation of $response and writes it into $result_xml
+
    );
-
//echo $response->serialize();
+
 
-
//checks the response. if the method "faultCode" returns zero, the response was succesfull
+
  //----------creates the XML-RPC client which represents a client of a XML-RPC server----------
-
if (0==$response->faultCode())
+
 
-
{
+
  //creates the client
-
//returns the value sent by the server
+
  $client = new xmlrpc_client($serverurl);
-
$value = $response->value();
+
 
-
//returns the actual PHP-language value of "value"
+
  //disable SSL Keycheck
-
$result_obj = $value->scalarval();
+
  $client->setSSLVerifyPeer(0);
-
//destroys "value"
+
 
-
unset($value);
+
  //----------sends the request to the server and gets the response----------
-
}
+
 
-
else
+
  //sends the request via https and writes it into $response. timeout is set to 0
-
{
+
  $response = $client->send($request,0,'https');
-
//returns the faultCode and the faultString
+
 
-
return $error = array ( 'faultCode' => $response->faultCode(), 'faultString' => $response->faultString());
+
  //generates a storable representation of $response and writes it into $result_xml
-
}
+
  //echo $response->serialize();
-
//destroys "client"
+
 
-
unset($client);
+
  //checks the response. if the method "faultCode" returns zero, the response was succesfull
-
//destroys "response"
+
  if (0==$response->faultCode())  
-
unset($response);
+
  {
-
//----------reads the result_obj----------
+
    //returns the value sent by the server
-
//if result_obj is set then it returns the actual PHP-language value of "result_obj"
+
    $value = $response->value();
-
if (isset($result_obj['status']))
+
     
-
{
+
    //returns the actual PHP-language value of "value"
-
$value['status'] = $result_obj['status']->scalarval();
+
    $result_obj = $value->scalarval();
-
}
+
     
-
if (isset($result_obj['server_details']))
+
    //destroys "value"
-
{
+
    unset($value);    
-
//resets the internal pointer for structEach() to the beginning of the struct
+
  }
-
$result_obj['server_details']->structreset();
+
  else
-
//reads the keys and values and list returns an array. if no keys and values are read out list returns no array and the while-loop
+
  {
-
stops execution
+
    //returns the faultCode and the faultString
-
while (list($keyname, $data) = $result_obj['server_details']->structEach())
+
    return $error = array ( 'faultCode' => $response->faultCode(), 'faultString' => $response->faultString());
-
{
+
  }
-
$server_details[$keyname] = $data->scalarval();
+
   
-
}
+
  //destroys "client"
-
//writes the array "server_list_data" into the array "value"
+
  unset($client);
-
$value['server_details'] = $server_details;
+
   
-
}
+
  //destroys "response"
-
return $value;
+
  unset($response);
 +
 
 +
 
 +
  //----------reads the result_obj----------
 +
   
 +
  //if result_obj is set then it returns the actual PHP-language value of "result_obj"
 +
   
 +
  if (isset($result_obj['status']))
 +
  {
 +
    $value['status'] = $result_obj['status']->scalarval();
 +
  }
 +
 
 +
  if (isset($result_obj['server_details']))
 +
  {
 +
     
 +
    //resets the internal pointer for structEach() to the beginning of the struct
 +
    $result_obj['server_details']->structreset();
 +
   
 +
    //reads the keys and values and list returns an array. if no keys and values are read out list returns no array and the while-loop stops execution
 +
    while (list($keyname, $data) = $result_obj['server_details']->structEach())
 +
    {
 +
      $server_details[$keyname] = $data->scalarval();
 +
    }
 +
    //writes the array "server_list_data" into the array "value"
 +
    $value['server_details'] = $server_details;
 +
  }
 +
  return $value;  
}
}
 +
//calls the function
//calls the function
$result = server_get_details($host,$port,$username,$password,$api_path,$srv_id);
$result = server_get_details($host,$port,$username,$password,$api_path,$srv_id);
 +
if(0==$result['faultCode'])
if(0==$result['faultCode'])
{
{
-
echo "Status: ".$result['status']."<br><br>";
+
  echo "Status: ".$result['status']."<br><br>";
-
//writes the array "server_details" into "daten"
+
 
-
$daten = $result["server_details"];
+
  //writes the array "server_details" into "daten"
-
//gets the array_keys(members) of "daten"
+
  $daten = $result["server_details"];
-
$datenkeys = array_keys($daten);
+
 
-
$k=0;
+
  //gets the array_keys(members) of "daten"
-
//counts the arraykeys, the number of arraykeys will be used in the do-while construct
+
  $datenkeys = array_keys($daten);
-
$anzahlkeys = count($datenkeys);
+
 
-
do
+
  $k=0;
-
{
+
 
-
echo " <u>".$datenkeys[$k].":</u> ".$daten[$datenkeys[$k]];
+
  //counts the arraykeys, the number of arraykeys will be used in the do-while construct
-
echo "<br>";
+
  $anzahlkeys = count($datenkeys);
-
$k=$k+1;
+
 
-
}
+
  do
-
while($k<$anzahlkeys);
+
  {
 +
    echo " <u>".$datenkeys[$k].":</u> ".$daten[$datenkeys[$k]];
 +
    echo "<br>";
 +
    $k=$k+1;
 +
  }
 +
  while($k<$anzahlkeys);
}
}
else
else
{
{
-
echo "faultCode: ".$result['faultCode']." faultString: ".$result['faultString'];
+
  echo "faultCode: ".$result['faultCode']." faultString: ".$result['faultString'];
}
}
?>
?>
   </nowiki>
   </nowiki>

Aktuelle Version vom 07:28, 6. Sep. 2012

back to API Documentation

server.get_details

 
<?php
<?php

//includes the class library
include_once("lib/xmlrpc.inc");
$xmlrpc_internalencoding = 'UTF-8';

$host="api.test.euserv.net";
$port=443;
$username="<API_USER>";
$password="<API_USER_PASSWORD>";
$api_path="/";
$srv_id=1337;

//defines the function
function server_get_details($host,$port,$username,$password,$api_path,$srv_id)
{

  //creates the serverurl
  $serverurl = 'https://'.$host.':'.$port.'/'.$api_path;

  //----------creates the message which will be send to the server----------

  //creates the request for the XML-RPC Server
  $request = new xmlrpcmsg('server.get_details');
  
  //adds parameters to the request
  $request->addParam
    (
    
    //creates a value of type struct which contains an array with the username and password
    new xmlrpcval
      (
      array

      (
        //creates a value of type string which contains the "$username"
        'login' => new xmlrpcval($username, 'string'),
        
        //creates a value of type string which contains the "$password"
        'password' => new xmlrpcval($password, 'string'),
      
        //creates a value
        'srv_id' => new xmlrpcval($srv_id, 'int'),
      
      )
      ,'struct'
      )
    );

  //----------creates the XML-RPC client which represents a client of a XML-RPC server----------

  //creates the client
  $client = new xmlrpc_client($serverurl);
  
  //disable SSL Keycheck
  $client->setSSLVerifyPeer(0);
  
  //----------sends the request to the server and gets the response----------

  //sends the request via https and writes it into $response. timeout is set to 0
  $response = $client->send($request,0,'https');
  
  //generates a storable representation of $response and writes it into $result_xml
  //echo $response->serialize();
  
  //checks the response. if the method "faultCode" returns zero, the response was succesfull
  if (0==$response->faultCode()) 
  {
    //returns the value sent by the server
    $value = $response->value();
      
    //returns the actual PHP-language value of "value"
    $result_obj = $value->scalarval();
      
    //destroys "value"
    unset($value);      
  }
  else
  {
    //returns the faultCode and the faultString
    return $error = array ( 'faultCode' => $response->faultCode(), 'faultString' => $response->faultString());
  }
    
  //destroys "client"
  unset($client);
    
  //destroys "response"
  unset($response);  
  
  
  //----------reads the result_obj----------
    
  //if result_obj is set then it returns the actual PHP-language value of "result_obj"
    
  if (isset($result_obj['status']))
  {
    $value['status'] = $result_obj['status']->scalarval();
  }

  if (isset($result_obj['server_details']))
  {
      
    //resets the internal pointer for structEach() to the beginning of the struct
    $result_obj['server_details']->structreset();
    
    //reads the keys and values and list returns an array. if no keys and values are read out list returns no array and the while-loop stops execution
    while (list($keyname, $data) = $result_obj['server_details']->structEach())
    {
      $server_details[$keyname] = $data->scalarval();
    }
    //writes the array "server_list_data" into the array "value"
    $value['server_details'] = $server_details;
  }  
  return $value;    
}

//calls the function
$result = server_get_details($host,$port,$username,$password,$api_path,$srv_id);

if(0==$result['faultCode'])
{
  echo "Status: ".$result['status']."<br><br>";

  //writes the array "server_details" into "daten"
  $daten = $result["server_details"];

  //gets the array_keys(members) of "daten"
  $datenkeys = array_keys($daten);

  $k=0;
  
  //counts the arraykeys, the number of arraykeys will be used in the do-while construct
  $anzahlkeys = count($datenkeys);
  
  do
  {
    echo " <u>".$datenkeys[$k].":</u> ".$daten[$datenkeys[$k]];
    echo "<br>";
    $k=$k+1;
  }
  while($k<$anzahlkeys);
}
else
{
  echo "faultCode: ".$result['faultCode']." faultString: ".$result['faultString'];
}
?>