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

PHP Voorbeeld XMLRPC/AdresXpress (WP/Straat)

Service: 
getAdresxpressWoonplaatsStraatnaam (Retourneert woonplaats/straatnaam informatie over een postcode.)
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('getAdresxpressWoonplaatsStraatnaam');
  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['postcode'] , 'string'));
  33.  
  34. // Nu is het tijd om het client object aan te maken die het daadwerkelijke
  35. // contact met de server gaat leggen.
  36. $oClient = new xmlrpc_client('http://www.cendris.nl/webservices/services/xmlrpc');
  37.  
  38. // De xmlrpc bibliotheek heeft een handige debugmodues om eventuele problemen op te sporen
  39. // Parameters zijn 0=UIT en 1=AAN
  40. // We zetten de debugmodus hier dus expliciet uit
  41. $oClient->setDebug(0);
  42.  
  43. // Laatste stap is het daadwerkelijk versturen van de opgebouwde ''message'
  44. // en het opvangen van het 'response' object
  45. $oResponse = $oClient->send( $oMessage );
  46.  
  47. // Is er wat fout gegaan?
  48. // De foutcode is een numerieke waarde 0=ok , >1 = fout
  49. // $oResponse->faultString() kan gebruikt worden om de foutmelding te achterhalen.
  50. if ($oResponse->faultcode())
  51. {
  52. // Toon in dit geval het volledige response object voor bestudering
  53. $xWebserviceOutput = $oResponse;
  54. }
  55. else
  56. {
  57. // Het Response object bevat niet alleen de waarden die we hebben willen
  58. // maar nog heel veel andere gegevens zoals bijvoorbeeld eventuele foutcodes
  59. // de ruwe xml gegevens etc. etc.
  60. // Met de volgende regel halen we alleen de gewenste informatie op.
  61. $oValue = $oResponse->value();
  62.  
  63. // Rest ons alleen nog maar om uit de terugeleverde structuur precies die
  64. // informatie te halen die we echt weten willen.
  65. // In dit geval gebruiken we een bibliotheek functie om de teruggeleverde
  66. // waarde om te zetten naar een geneste php-array
  67. $xWebserviceOutput = xmlrpc_decode( $oValue );
  68. }
  69. }
  70.  
  71.  
  72.  
  73. ?>
  74.  
  75. <html>
  76. <body style="font-family:Verdana;"><div style="postion:relative;left:10px;">
  77.  
  78. <h3>XML-RPC Voorbeeldcode<br /> <i>getAdresxpressWoonplaatsStraatnaam</i></h3><br />
  79.  
  80. <form name="example_form" enctype="multipart/form-data" method="POST" action="<?php print $_SERVER['PHP_SELF']?>">
  81. <table>
  82.  
  83. <tr>
  84. <td>Gebruikersnaam</td>
  85. <td><input type="text" size="30" maxlength="30" name="gebruikersnaam" value="<?php print $_POST['gebruikersnaam']?>"></td>
  86. </tr>
  87.  
  88. <tr>
  89. <td>Wachtwoord</td>
  90. <td><input type="text" size="30" maxlength="30" name="wachtwoord" value="<?php print $_POST['wachtwoord']?>"></td>
  91. </tr>
  92.  
  93. <tr>
  94. <td>Postcode</td>
  95. <td><input type="text" size="30" maxlength="30" name="postcode" value="<?php print $_POST['postcode']?>"></td>
  96. </tr>
  97.  
  98. <tr>
  99. <td></td>
  100. <td><input type="submit" name="submit" value="Toon Informatie" ></td>
  101. </tr>
  102.  
  103. </table>
  104. </form>
  105.  
  106. <pre>
  107. <!-- Toon de output -->
  108. <?php print_r( $xWebserviceOutput); ?>
  109. </pre>
  110.  
  111. </div></body>
  112. </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