Hallo
Ich bin ein SOAP Anfänger und müsste für einen kleinen Online-Shop die Bestellangaben mit SOAP an einen Server schicken, wo die Bestellungen verarbeitet werden. Nun sind die Angaben ziemlich komplex und ich weiss nicht recht, wie dies mit PHP schreiben muss.... habe schon mal folgendes ausprobiert, aber es funktioniert nicht:
Ich müsste den Request wie folgt schicken:
Wäre um ein bisschen Hilfe sehr dankbar!
Gruss,
Pat
Ich bin ein SOAP Anfänger und müsste für einen kleinen Online-Shop die Bestellangaben mit SOAP an einen Server schicken, wo die Bestellungen verarbeitet werden. Nun sind die Angaben ziemlich komplex und ich weiss nicht recht, wie dies mit PHP schreiben muss.... habe schon mal folgendes ausprobiert, aber es funktioniert nicht:
PHP-Code:
$client = new SoapClient("https://secure.nationale-apotheek.nl/OrderSendWebservice/Service.asmx?WSDL",
array('proxy_login' => "someword",
'proxy_password' => "somepw"));
$arrMessageTypeSection=array();
$arrMessageTypeSection[0]=new SoapParam('test','MessageOwner');
$arrMessageTypeSection[1]=new SoapParam('flase','IsTest');
$arrCustomerSection=array();
$arrCustomerSection[0]=new SoapParam('test','CustomerId');
$arrCustomerSection[1]=new SoapParam('test','LastName');
$arrMessage=array();
$arrMessage[0]=new SoapParam($arrMessageTypeSection, 'MessageTypeSection');
$arrMessage[1]=new SoapParam($arrCustomerSection, 'CustomerSection');
$result = $client->__call("SendOrder",$arrMessage);
//var_dump ($arrMessage);
Code:
POST /OrderSendWebservice/Service.asmx HTTP/1.1 Host: diewebsite.nl Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://denationaleapotheek.nl/SendOrder" <?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:Body> <SendOrder xmlns="http://denationaleapotheek.nl/"> <message xmlns="http://denationaleapotheek.nl/Schemas/OrderSchema.xsd"> <MessageTypeSection> <MessageType>string</MessageType> <Version>string</Version> <Release>string</Release> <MessageOwner>string</MessageOwner> <IsTest>string</IsTest> </MessageTypeSection> <InterchangeSection> <Sender> <SenderID>string</SenderID> <SenderContactName>string</SenderContactName> <SenderTelephone>string</SenderTelephone> <SenderEmail>string</SenderEmail> <SenderApplicationReference>string</SenderApplicationReference> </Sender> <Receiver> <ReceiverID>string</ReceiverID> <ReceiverContactName>string</ReceiverContactName> <ReceiverTelephone>string</ReceiverTelephone> <ReceiverEmail>string</ReceiverEmail> <ReceiverApplicationReference>string</ReceiverApplicationReference> </Receiver> <DateTime> <DateOfPreparation>string</DateOfPreparation> <TimeOfPreparation>string</TimeOfPreparation> </DateTime> </InterchangeSection> <CustomerSection> <CustomerId>string</CustomerId> <LastName>string</LastName> <MiddleName>string</MiddleName> <Initials>string</Initials> <BirthDate>string</BirthDate> <Gender>string</Gender> <CustomerStreet>string</CustomerStreet> <CustomerHouseNumber>string</CustomerHouseNumber> <CustomerPostalCode>string</CustomerPostalCode> <CustomerCity>string</CustomerCity> <CustomerTelephone>string</CustomerTelephone> <CustomerEmailAddress>string</CustomerEmailAddress> <CustomerBankAccount>string</CustomerBankAccount> </CustomerSection> <OrderSection> <PaymentMethode>string</PaymentMethode> <MailBoxDeleiveryAllowed>string</MailBoxDeleiveryAllowed> <Remarks>string</Remarks> <OrderReference>string</OrderReference> <DeliveryAddressSection> <Street>string</Street> <HouseNumber>string</HouseNumber> <PostalCode>string</PostalCode> <City>string</City> </DeliveryAddressSection> <OrderedItemSection> <OrderReference>string</OrderReference> <Quantity>string</Quantity> <ArticleId>string</ArticleId> <Name>string</Name> <EAN>string</EAN> </OrderedItemSection> <OrderedItemSection> <OrderReference>string</OrderReference> <Quantity>string</Quantity> <ArticleId>string</ArticleId> <Name>string</Name> <EAN>string</EAN> </OrderedItemSection> </OrderSection> </message> </SendOrder> </soap:Body> </soap:Envelope> Response: HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?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:Body> <SendOrderResponse xmlns="http://denationaleapotheek.nl/" /> </soap:Body> </soap:Envelope>
Gruss,
Pat
Kommentar