API Documentation RunningExamples server.get details PHP
Aus EUserv Wiki
(Unterschied zwischen Versionen)
Root (Diskussion | Beiträge) |
Root (Diskussion | Beiträge) |
||
| (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'];
}
?>

