views:

352

answers:

2

Hi
I've been testing nuSoap with codeIgniter (PHP Framework) but seems nuSoap isn't prepared to work with latest php 5.3, even if I download a patched nusoap version for php 5.3

I have the following code:

require_once(APPPATH.'libraries/NuSOAP/lib/nusoap'.EXT); //includes nusoap
$n_params = array('CityName' => 'San Juan', 'CountryName' => 'Argentina');
$client = new nusoap_client('http://www.webservicex.net/globalweather.asmx?WSDL');
$client->setHTTPProxy("10.2.0.1",6588,"","");
$result = $client->call('GetWeather', $n_params);

Can any1 help me to convert these functions into php soap functions? Including proxy function?

Thanks a lot

+2  A: 
require_once(APPPATH.'libraries/NuSOAP/lib/nusoap'.EXT); //includes nusoap
$n_params = array('CityName' => 'San Juan', 'CountryName' => 'Argentina');
$client = new nusoap_client('http://www.webservicex.net/globalweather.asmx?WSDL');
$client->setHTTPProxy("10.2.0.1",6588,"","");
$result = $client->call('GetWeather', $n_params);

becomes

$url = 'http://www.webservicex.net/globalweather.asmx?WSDL';
$params = array(
    'proxy_host' => '10.2.0.1',
    'proxy_port' => '6588'
    );
$client = new SoapClient($url, $params);
$client->__soapCall('GetWeather', $n_params);
Ivo Sabev
Paste the new code in your question.
Ivo Sabev
@Enrique Where do you set $n_params ?
Ivo Sabev
Hi Ivo. I've fixed everything, but now I'm having trouble with SSL, which is another world. Thanks for your help!
Enrique
You are welcome!
Ivo Sabev
A: 

The following code was the correct way of calling the above webservice. I've just only modified the $ser_params array. Now it has a sub array

$url = 'http://www.webservicex.net/globalweather.asmx?WSDL';
$conn_params = array(
'proxy_host' => '10.2.0.1',
'proxy_port' => '6588'
);

$ser_params = array (
'GetWeather' => array (
"CityName" => "San Juan",
"CountryName" => "Argentina"
)
);

$client = new SoapClient($url, $conn_params);
$result = $client->__soapCall('GetWeather', $ser_params);
print_r ($result);

Enrique