Hallo zusammen,
ich versuche einen Webservice mit PHP via SOAP anzusprechen.
Der Webservice erwartet von mir folgende XML Struktur:
|
XML Code
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<LoginControl xmlns="http://server.de/o2Web/o2Con">
<username>string</username>
<password>string</password>
</LoginControl>
</soap:Header>
<soap:Body>
<GetItemInfo xmlns="http://server.de/o2Web/o2Con">
<InItemsRows>
<InItemsRow>
<ItemID>int</ItemID>
<Quantity>double</Quantity>
</InItemsRow>
<InItemsRow>
<ItemID>int</ItemID>
<Quantity>double</Quantity>
</InItemsRow>
</InItemsRows>
</GetItemInfo>
</soap:Body>
</soap:Envelope>
|
Ich habe mir die PHP doku bezüglich SOAP durchgelesen, aber leider ist mir unklar, wie ich diese Struktur mit diesen Mitteln hinbekomme.
Mein erster Versucht war:
|
PHP Quellcode
|
1
2
3
4
|
$client = new SoapClient("https://server.de/o2Web/o2Con.asmx?WSDL",array('trace' => 1));
$parms = array('Quantity' => 5,
'ItemID' => 4757380);
$result = $client->__soapCall("GetItemInfo",$parms);
|
Als Meldung kommt
|
PHP Quellcode
|
1
|
"Anmeldeinformationen erforderlich (Kundennummer/Kennwort)."
|
Desweiteren ist der Webservice per Soap Header geschützt.
Kann mir jemand weiterhelfen, wie man das macht?
Gruß jogi