How to create simple SOAP request using PHP?

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
rahulpragma
Forum Newbie
Posts: 3
Joined: Wed May 08, 2013 4:29 am

How to create simple SOAP request using PHP?

Post by rahulpragma »

Hello,

I tried to create a SOAP request but could not succeed.
SOAP WADL url is http://www.mobipost.com.au/httpapi/Messaging.asmx?WSDL

AND request should be like:

Code: Select all

<?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>
    <AuthenticationHeader xmlns="http://messaging.mobipostapi.thirdscreen.com.au/">
      <UserName>SAMPLE_USER</UserName>
      <Password>SAMPLE_PASS</Password>
    </AuthenticationHeader>
  </soap:Header>
  <soap:Body>
    <SendSMSToContacts xmlns="http://messaging.mobipostapi.thirdscreen.com.au/">
      <oSMS>
        <MessageText>THIS IS MESSAGE</MessageText>
      </oSMS>
      <ContactIDs>
        <int>123456789</int>
        <int>987654321</int>
      </ContactIDs>
    </SendSMSToContacts>
  </soap:Body>
</soap:Envelope>

I tried:

Code: Select all

$url = 'http://www.mobipost.com.au/httpapi/Messaging.asmx?WSDL';
$client = new SoapClient($url);
$result = $client->AuthenticationHeader(array('UserName' => 'SAMPLE_USER','Password' => 'SAMPLE_PASS'));
$result = $client->SendSMSToContacts(array('MessageText' => 'THIS IS MESSAGE'));
$result = $client->ContactIDs(array('123456789', '987654321'));
But it shows Error:

Code: Select all

Fatal error: Uncaught SoapFault exception: [Client] Function ("AuthenticationHeader") is not a valid method for this service in D:\xampp\htdocs\globalmobile\send_message_v2.php:26 Stack trace: #0 D:\xampp\htdocs\globalmobile\send_message_v2.php(26): SoapClient->__call('AuthenticationH...', Array) #1 D:\xampp\htdocs\globalmobile\send_message_v2.php(26): SoapClient->AuthenticationHeader(Array) #2 {main} thrown in D:\xampp\htdocs\globalmobile\send_message_v2.php on line 26

Can you please help me to create valid SOAP request to communicate with WSDL server?


Thank you in advance.
pbs
Forum Contributor
Posts: 230
Joined: Fri Nov 07, 2008 5:31 am
Location: Nashik, India
Contact:

Re: How to create simple SOAP request using PHP?

Post by pbs »

Use nusoap PHP toolkit, download it from here

http://sourceforge.net/projects/nusoap/
Post Reply