I am new to web and php…
I am trying to access web service via a wsdl link to get a ping request. The server in point is on a private network that is accessed via LAN and it is off net. I have written the following index.php:
<?php
require_once('api/checkserviceavailability.php');
$url = "http://ipAddress:port/###########?wsdl";
$action = "http://*action_Url*";
$respone = new RunProcess($url, $action);
echo "OutPut ".$respone->FirstCall();
?>
The rest of the process is on the directory api/checkserviceavailability.php
<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
class RunProcess{
private $url ="http://ipAddress:port/###########?wsdl";
private $action ="http://*action_Url*";
public function __construct($url, $action){
$this->url = $url;
$this->action = $action;
}
public function FirstCall(){
$soapEnvelopeXml = $this->CreateSoapEnvelope();
$WebRequest = $this->CreateWebRequest($this->url ,$this->action);
return $parser = simplexml_load_string($WebRequest);
}
public function CreateWebRequest($url, $action){
$url = $url;
$headers = array(
"Content-type: text/xml",
"Content-length: " . strlen($action),
"Connection: close",
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $action);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$data = curl_exec($ch);
return $data;
}
public function CreateSoapEnvelope(){
$string = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:bas="http://*action_Url*"><soapenv:Header/><soapenv:Body><bas:checkServiceAvailabilityRequest><requestID/><requestDate/><requestOrigin/><requestMsg>PING</requestMsg></bas:checkServiceAvailabilityRequest></soapenv:Body></soapenv:Envelope>';
$dom = new DOMDocument();
return $dom->loadXML($string);
}
}
I had previously ran the code in C# and I got a positive response. Then tried to host the code in xampp in htdocs meaning I will be running it from local host while I am connected to the LAN. I do not know if it is not going through or I am failing because it is LocalHost. And if so, what can I do or use to run and test the code on my machine.