"Eenvoudig en foutloze invoer van adresgegevens in uw CRM-systeem ..."
AdresXpress
 

PHP voorbeeld XMLRPC/doSearchDMZ

Service: 
doSearchDMZ (Retourneert informatie over bedrijven.)
Programmeertaal: 
PHP (Open-source voor interactieve websites)
Protocol: 
XMLRPC
  1. <?php
  2.  
  3. /**
  4.   * @file Voorbeeldcode webservice AdresXpress/XML-RPC/PHP
  5.   * @copyright Cendris Dataconsulting December 2008
  6.   * @author W.J.J. Tol
  7.   * @version 1.0
  8.   *
  9.   */
  10.  
  11. // Output van de webservice tonen we later onderaan het formulier
  12. $xWebserviceOutput = 'Nog geen output aanwezig.';
  13.  
  14. // Controleer of we dit formulier reeds een keer ge-submit hebben.
  15. if (isset($_POST['gebruikersnaam']))
  16. {
  17. // Normaal gesproken zouden we hier de input van de gebruiker controleren
  18. // In dit voorbeeld slaan we deze actie over.
  19.  
  20. // Allereerst hebben we de xmlrpc bibliotheek nodig.
  21. // Deze zorgt ervoor dat de 'message' netjes in XML verpakt wordt en dat dit
  22. // xml pakketje op het juiste adres wordt afgeleverd.
  23. require_once('xmlrpc.inc');
  24.  
  25. // Tweede stap is het opbouwen van 'message' object
  26. // In deze fase geven we al aan wat de naam is van de service die we gaan aanroepen
  27. $oMessage = new xmlrpcmsg('doSearchDMZ');
  28.  
  29. // Vervolgens voegen we de gewenste parameters toe
  30. $oMessage->addParam( new xmlrpcval( $_POST['gebruikersnaam'] , 'string'));
  31. $oMessage->addParam( new xmlrpcval( $_POST['wachtwoord'] , 'string'));
  32. $oMessage->addParam( new xmlrpcval( $_POST['naam'] , 'string'));
  33. $oMessage->addParam( new xmlrpcval( $_POST['str_hnr'] , 'string'));
  34. $oMessage->addParam( new xmlrpcval( $_POST['pc_wplts'] , 'string'));
  35. $oMessage->addParam( new xmlrpcval( $_POST['telefoon'] , 'string'));
  36. $oMessage->addParam( new xmlrpcval( $_POST['kvkNummer'] , 'string'));
  37.  
  38. // Nu is het tijd om het client object aan te maken die het daadwerkelijke
  39. // contact met de server gaat leggen.
  40. $oClient = new xmlrpc_client('http://www.cendris.nl/webservices/services/xmlrpc');
  41. // De xmlrpc bibliotheek heeft een handige debugmodues om eventuele problemen op te sporen
  42. // Parameters zijn 0=UIT en 1=AAN
  43. // We zetten de debugmodus hier dus expliciet uit
  44. $oClient->setDebug(0);
  45.  
  46. // Laatste stap is het daadwerkelijk versturen van de opgebouwde 'message'
  47. // en het opvangen van het 'response' object
  48. $oResponse = $oClient->send( $oMessage );
  49.  
  50.  
  51. // Is er wat fout gegaan?
  52. // De foutcode is een numerieke waarde 0=ok , >1 = fout
  53. // $oResponse->faultString() kan gebruikt worden om de foutmelding te achterhalen.
  54. if ($oResponse->faultcode())
  55. {
  56. // Toon in dit geval het volledige response object voor bestudering
  57. $xWebserviceOutput = $oResponse;
  58. }
  59. else
  60. {
  61. // Het Response object bevat niet alleen de waarden die we hebben willen
  62. // maar nog heel veel andere gegevens zoals bijvoorbeeld eventuele foutcodes
  63. // de ruwe xml gegevens etc. etc.
  64. // Met de volgende regel halen we alleen de gewenste informatie op.
  65. $oValue = $oResponse->value();
  66. // Rest ons alleen nog maar om uit de terugeleverde structuur precies die
  67. // informatie te halen die we echt weten willen.
  68. // In dit geval gebruiken we een bibliotheek functie om de teruggeleverde
  69. // waarde om te zetten naar een geneste php-array
  70. $xWebserviceOutput = xmlrpc_decode( $oValue );
  71.  
  72. }
  73. }
  74.  
  75.  
  76.  
  77. ?>
  78.  
  79. <html>
  80. <body style="font-family:Verdana;"><div style="postion:relative;left:10px;">
  81.  
  82. <h3>XML-RPC Voorbeeldcode<br /> <i>doSearchDMZ</i></h3><br />
  83.  
  84. <form name="example_form" enctype="multipart/form-data" method="POST" action="<?php print $_SERVER['PHP_SELF']?>">
  85. <table>
  86.  
  87. <tr>
  88. <td>Gebruikersnaam</td>
  89. <td><input type="text" size="30" maxlength="30" name="gebruikersnaam" value="<?php print $_POST['gebruikersnaam']?>"></td>
  90. </tr>
  91.  
  92. <tr>
  93. <td>Wachtwoord</td>
  94. <td><input type="text" size="30" maxlength="30" name="wachtwoord" value="<?php print $_POST['wachtwoord']?>"></td>
  95. </tr>
  96.  
  97. <tr>
  98. <td>Bedrijfsnaam</td>
  99. <td><input type="text" size="30" maxlength="30" name="naam" value="<?php print $_POST['naam']?>"></td>
  100. </tr>
  101.  
  102. <tr>
  103. <td>Straatnaam en huisnummer</td>
  104. <td><input type="text" size="30" maxlength="30" name="str_hnr" value="<?php print $_POST['str_hnr']?>"></td>
  105. </tr>
  106.  
  107. <tr>
  108. <td>Postcode en woonplaats</td>
  109. <td><input type="text" size="30" maxlength="30" name="pc_wplts" value="<?php print $_POST['pc_wplts']?>"></td>
  110. </tr>
  111.  
  112. <tr>
  113. <td>Telefoon</td>
  114. <td><input type="text" size="30" maxlength="30" name="telefoon" value="<?php print $_POST['$telefoon']?>"></td>
  115. </tr>
  116.  
  117. <tr>
  118. <td>KVK nummer</td>
  119. <td><input type="text" size="30" maxlength="30" name="kvkNummer" value="<?php print $_POST['$kvkNummer']?>"></td>
  120. </tr>
  121.  
  122. <tr>
  123. <td></td>
  124. <td><input type="submit" name="submit" value="Toon Informatie" ></td>
  125. </tr>
  126.  
  127. </table>
  128. </form>
  129.  
  130. <pre>
  131. <!-- Toon de output -->
  132. <?php print_r( $xWebserviceOutput); ?>
  133. </pre>
  134.  
  135. </div></body>
  136. </html>

AdresXpress

6-cijferige postcode
Huisnummer zonder toevoeging
Geavanceerd zoeken

Contact

Wij helpen u graag.
Bel ons:
+31(0) 88 23 63 747 of stuur een e-mail

Feedback Form
Website Feedback