Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: SOAP + Pobranie danych pogodowych
Forum PHP.pl > Forum > PHP
damianooo
Witam,

Mam pobrać dane pogodowe z następującego serwisu:

http://www.service-repository.com/service/...iew/-2082028434

jest tam podany następujący WSDL z danymi w XMLu : http://www.webservicex.com/globalweather.asmx?WSDL

Zrobiłem coś takiego :

$wsdl = 'http://www.webservicex.com/globalweather.asmx?WSDL ';
$soap = new SoapClient($wsdl);
$wynik = $soap->__soapCall('GetWeatherSoapIn', array('Barcelona','Spain'));
echo $wynik;

Jednak w wyniku nie dostaję żadnych danych ... co robię nie tak ?


proszę o podpowiedź jak się do tego zabrać
dzięĸi, pozdrawiam
Damonsson
Musisz się odwołać bezpośrednio do funkcji i podać wymagane parametry, łącznie z nazwą parametru.

np tak:

  1. $wynik = $soap->GetWeather(array('CityName' => 'Barcelona', 'CountryName' => 'Spain'));
damianooo
dzięki za próbę pomocy ale też tak nie działa ... próbowałem wpisać miasto i państwo na stronie z SOAP i kliknąłem SEND ale też nie pokazało mi żadnych informacji o pogodzie w tym mieście ... coś chyba jest nie tak z usułgą na tej stronie ... może chwilowo serwis nie działa ... hmm
Damonsson
Przy okazji możesz skasować spację z urla wink.gif

No i obiektu na string nie zamienisz, więc echo też bym wywalił wink.gif
damianooo
coś pomyliłem bo na stronie informacje pogodowe mi znajduje :


  1. Service: GlobalWeather
  2.  
  3. SOAP Request
  4.  
  5. <s11:Envelope xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/">
  6. <s11:Body>
  7. <ns1:GetWeather xmlns:ns1="http://www.webserviceX.NET">
  8. <ns1:CityName>Barcelona</ns1:CityName>
  9. <ns1:CountryName>Spain</ns1:CountryName>
  10. </ns1:GetWeather>
  11. </s11:Body>
  12. </s11:Envelope>
  13.  
  14.  
  15.  
  16.  
  17. SOAP Response
  18.  
  19. <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
  20. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  21. xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  22. <soap:Body>
  23. <GetWeatherResponse xmlns="http://www.webserviceX.NET">
  24. <GetWeatherResult>
  25.  
  26. Barcelona / Aeropuerto, Spain (LEBL) 41-17N 002-04E 6M
  27. Jun 24, 2013 - 02:30 PM EDT / 2013.06.24 1830 UTC
  28. from the SSE (150 degrees) at 7 MPH (6 KT):0
  29. greater than 7 mile(s):0
  30. partly cloudy
  31. 68 F (20 C)
  32. 57 F (14 C)
  33. 68%
  34. 30.18 in. Hg (1022 hPa)
  35. Success
  36. </GetWeatherResult>
  37. </GetWeatherResponse>
  38. </soap:Body>
  39. </soap:Envelope>



więc i w moim skrypcie powinien to umieć zrobić wink.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.