Отправка SOAP-сообщения с помощью PHP - PullRequest
0 голосов
/ 27 мая 2010

то, что я пытаюсь сделать, это отправить загруженные значения из формы в систему CRM с SOAP и PHP. Некоторое время я читал о SOAP и не понимаю, как это сделать, кто-нибудь еще знает?

Ответы [ 2 ]

0 голосов
/ 19 июля 2013

С тех пор вы, вероятно, нашли решение, но, возможно, следующее поможет кому-то еще:

мыло-server.php:

<?php

class MySoapServer {

    public function getMessage ()
    {
        return "Hello world!";
    }

    public function add ($n1,$n2)
    {
        return $n1+n2;
    }

}


  $option = array ('uri' => 'http://example.org/stacky/soap-server');
  $server = new SoapServer(null,$option);
  $server->setClass('MySoapServer');
  $server->handle();

?>  

и soap-client.php

<?php

  $options = array ('uri' => 'http://example.org/stacky/soap-server',
        'location' => 'http://localhost/soap-server.php');

  $client = new SoapClient(null,$options);

  echo $client ->getMessage();
  echo "<br>";
  echo $client ->add(41,1);

?>
0 голосов
/ 27 мая 2010

Для этого может быть проще всего загрузить простой набор инструментов для мыла, например 'NuSOAP', из sourceforge.

А затем вы должны написать что-то вроде следующего (пример представления номера ISBN):

<?php
// include the SOAP classes
require_once('nusoap.php');
// define parameter array (ISBN number)
$param = array('isbn'=>'0385503954');
// define path to server application
$serverpath ='http://services.xmethods.net:80/soap/servlet/rpcrouter';
//define method namespace
$namespace="urn:xmethods-BNPriceCheck";
// create client object
$client = new soapclient($serverpath);
// make the call
$price = $client->call('getPrice',$param,$namespace);
// if a fault occurred, output error info
if (isset($fault)) {
        print "Error: ". $fault;
        }
else if ($price == -1) {
        print "The book is not in the database.";
} else {
        // otherwise output the result
        print "The price of book number ". $param[isbn] ." is $". $price;
        }
// kill object
unset($client);
?>

Этот фрагмент кода был взят непосредственно из сайта, который также является хорошим ресурсом для просмотра. http://developer.apple.com/internet/webservices/soapphp.html

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...