Webservice: Datenbankabfrage per PHP (über SOAP?)

EmJayy

Mitglied
Hallo an alle die mir helfen möchten,

ich muss ganz ehrlich gestehen, dass ich nicht viel Ahnung von PHP habe nun aber gezwungernder Maßen eine Application schreiben soll.

Also nun zu meinem Problem:
- Grundsätzlich soll ich einen Datenbankabfrage an einen Server richten. Diese Anfrage soll mittels XML erfolgen.

Ich habe auch eine Schnittstellenbeschreibung bekommen wo vieles nützliches drin steht:

1. Compose the XML: Create the XML string for the request, providing values for all required input arguments and any optional input arguments the function needs. For details, see "Using the XML Data Format."

2. Add the security information: Insert the API user name and password into the HTTP header for the request.

Each function call made by an application must be authenticated. The user name and password discussed above must be specified for function calls. This is done with the header field label "X-AUCTIONWORKS-API-VALIDATE" in the HTTP header. Use a semicolon to separate the user name and password values.

3. Send the request: Using the HTTP transport protocol, send the XML request string to the Marketworks platform.

4. Parse the result: using a custom or commercial XML parser, retrieve the values from the function's result set.

---------------
Ok nun ich möchte gern diese XML- Struktur versenden

Sample GetUser HTTP request string:

<?xml version="1.0"?>
<Request>
<UserName>smartuser</UserName>
<Password>password</Password>
<Command>GetUser</Command>
</Request>



an diese Adresse:
http://api.marketworks.com/api/apiCall.asp


----------
User und Password, die in Pkt. zwei beschrieben sind, sind nicht die gleichen wie in dem XML Konstrukt


Ich hoffe ich habe den Grundstein für eine erfolgreiche Hilfe gelegt und vertraue nun vollkomm in eure Fähigkeiten....achso natürlich habe ich auch schon lauter Recherchen durchgeführt und denke SOAP sollte der richtige weg sein....habe auch das Tutorial hier zu SOAP gemacht....hat mich aber nicht wirklich weitergebracht.

würde mich sehr über ein paar Code-Beispiele freuen
 
Frag sie mal ob sie auch eine WSDL Datei haben, das würde es einfacher machen. Die haben ja sicherlich noch mehr Personen die die Schnittstelle verwenden, kann also gut sein. Dann eine SOAP Klasse verwenden wie zB NuSOAP

Dann sehen die aurufe ziemlich Trivial aus:

PHP:
require_once('nusoap.php');
$client = new soapclient('http://api.marketworks.com/api/apiCall.asp');

// Check for errors
$error = $client->getError();
if ($error){echo $error;}

// Set the values for the array
$params = array('username' => 'Testusername',
                'password' => 'Testpassword',
                'command' => 'CheckUser');

// Call the SOAP method
$result = $client->call('Request', array('name' => $params));

Das wird so nicht funktionieren, aber in die Richtung wird es gehen.
Die kurze API beschreibung find ich irgendwie seltsam falls die wirklich einen richtigen SOAP Server verwenden.
 
Hmmm...weiß nicht so genau ob auf der anderen Seite ein SOAP Server steht

hier mal ein paar Auszüge aus der Schnittstellenbeschreibung:

How to Make a Function Call
To issue an Marketworks API function call, follow these basic steps:

1. Compose the XML: Create the XML string for the request, providing values for all required input arguments and any optional input arguments the function needs. For details, see "Using the XML Data Format."

2. Add the security information: Insert the API user name and password into the HTTP header for the request. For details, see "API Security."

3. Send the request: Using the HTTP transport protocol, send the XML request string to the Marketworks platform. For details, see "Sending the Function Request."

4. Parse the result: using a custom or commercial XML parser, retrieve the values from the function's result set.


How to Work with the Marketworks API Security
Each function call made by an application must be authenticated. The user name and password discussed above must be specified for function calls. This is done with the header field label "X-AUCTIONWORKS-API-VALIDATE" in the HTTP header. Use a semicolon to separate the user name and password values.

The credentials passed with a function call are evaluated at the Marketworks platform. If the pair matches that on file for the third-party developer, the function call is approved and a result set generated. However, if the pair is not valid, an error occurs.

(Note: The credentials for API access are different from the username/password you use to login to your account through the Marketworks homepage. In the HTTP header, you must pass the API user name / password as described above; in the body of the command, you must pass your regular Marketworks username / password).


Sending the Function Request
Function calls are made to the Marketworks platform using the following URL:

Powerseller System

Production URL: http://api.marketworks.com/api/apiCall.asp
Sandbox URL: http://sandbox.marketworks.com/api/apiCall.asp

Corporate System:

Production URL: http://api.corporate.marketworks.com/api/apiCall.asp


Please note that all testing for Corporate System sellers is currently against our live system. We do not have a sandbox at this time for Corporate sellers. For Powersellers the sandbox system is an entirely separate system and database from production. The sandbox API corresponds with the sandbox site, which is http://sandbox.marketworks.com.

Executing a function (sending the API function's XML request string to the Marketworks platform) varies depending on the programming language used to create the application. In general, after the XML string has been composed and the security information embedded into the HTTP header, the request string needs to be conveyed to the Marketworks platform using the HTTP transport protocol.
 
Zuletzt bearbeitet:
An alle die versucht haben mir zu helfen, auch an denen die es sich nur durchgelesen haben mit der Absicht zu helfen vielen Dank!!
 
Zurück