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

PHP voorbeeld XMLRPC/AdresXpress

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