Ich muß eine Webservices zum Datenabgleich zwischen einer Online-Plattform und einem intranet erstellen.
Im Moment bastel ich noch an Testscripten.
Das einzubindene WSDL
Ein >Testscript< gibt mir nur eine lange Liste von Werten aus und den faultstring "DTD are not supported by SOAP" (fehlt der Envelope?).
Aus den ganzen Tutorial die ich im Netz finde, werde ich nicht wirklich schlau.
Hier mal ein erster Hinkversuch, um überhaupt etwas zurückgeliefert zu bekommen.
Was muß ich in der Funktion SetCustomerTraining eintragen, bzw, wie die Parameter setzten um so eine Liste an des Intarnet zurückzuliefern:
Bin mir nicht mal sicher das das WSDL richtig geschrieben ist.
Im Moment bastel ich noch an Testscripten.
Das einzubindene WSDL
Ein >Testscript< gibt mir nur eine lange Liste von Werten aus und den faultstring "DTD are not supported by SOAP" (fehlt der Envelope?).
Aus den ganzen Tutorial die ich im Netz finde, werde ich nicht wirklich schlau.
Hier mal ein erster Hinkversuch, um überhaupt etwas zurückgeliefert zu bekommen.
PHP:
<?php
ini_set('display_errors', 1);
ini_set("soap.wsdl_cache_enabled", "0");
$error['no_access'] = "Ihre Abfrage kann nicht verarbeitet werden";
$error['no_server'] = "Keine Verbindung zum Datenbank-Server";
$error['no_result'] = "Ihre Abfrage lieferte keine Ergebnisse";
function SetCustomerTraining($nick, $pword, $customer_number, $appointment, $course_group, $course, $modul_id, $city, $customers) {
global $error;
global $intranet;
global $mysql;
//---------- Knoll-Konfiguration einbinden ----------
include($_SERVER['DOCUMENT_ROOT']."/config/config.webservice.php");
$participants['name'] => array('Testkunde 1', 'Testkunde 2', 'Testkunde 3', 'Testkunde 4', 'Testkunde 5');
$participants['result'] => array('new', 'upadte', 'new', 'new', 'update');
$answer = array('Training' => $participants);
return("Noch keine Verarbeitung");
}
try {
$server = new SoapServer("http://cms.vma-autoteile.de/webservices/SetCustomerTraining.wsdl", 'encoding' => 'UTF-8'); //, array('uri' => "http://cms.vma-autoteile.de/knoll/")); //{uri} müsst ihr ersetzen mit den pfad
$server->addFunction('SetCustomerTraining'); //Funktion zum Server hinzufügen
$server->addFunction(SOAP_FUNCTIONS_ALL);
$server->handle(); //Hier wird die Abfrage abgearbeitet
}
catch (SOAPFault $f) {
print $f->faultstring;
}
?>
Was muß ich in der Funktion SetCustomerTraining eintragen, bzw, wie die Parameter setzten um so eine Liste an des Intarnet zurückzuliefern:
Code:
<Training>
<name>Teilnehmer 1</name>
<result>new</result>
</Training>
<Training>
<name>Teilnehmer 2</name>
<result>delete</result>
</Training>
<Training>
<name>Teilnehmer 3</name>
<result>update</result>
</Training>
Bin mir nicht mal sicher das das WSDL richtig geschrieben ist.