Zum Inhalt springen

PHP SERVER_client


Empfohlene Beiträge

Hallo,

ich bin noch Anfänger und hoffe deshalb sehr auf eure Unterstützung.

Ich habe folgende Situation:

1) es gibt einen Server (so eine Art großes Telefonbuch mit einer EIngabezeile) auf dem man über verschiedene Parameter eine Person suchen kann. (z.b Name oder Nummer...)

Ich soll einen Client bauen mit dem man diesen Server abfragen kann.

2) Ergebnis ist eine XML-Ausgabe, die man mit XML-Schema parsen muss.

Mein Code bis jetzt:

<?php

header('Content-type: text/xml');

$request = "https://https://telefonbuch.de/telefonbuch/gumb/xml/such?username=Nutzer&password=123456&Suchparameter=Begriff";

$request .= $_SERVER[argv][1] . "=" . $_SERVER[argv][2];

$fp = fsockopen('https://telefonbuch.de', 443);

fputs($fp, $request);

while(!feof($fp)) {

$res .= fgets($fp, 512);

}

fclose($fp);

echo $res;

$str = explode("\r\n", $res);

$echo = false;

$myStr = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";

foreach($str as $entry){

if($entry == '<?xml version="1.0" encoding="UTF-8"?>') {

// start printing

$echo = true;

$myStr .= '<response success="true">';

} else {

if($echo){

$myStr .= trim($entry);

}

}

}

if($_SERVER['argv'][1] == 'nummer'){

$tmpoutput = explode("<name>", $myStr);

$output = explode("</name>", $tmpoutput[1]);

} else if($_SERVER['argv'][1] == 'name'){

$tmpoutput = explode("<nummer>", $myStr);

$output = explode("</nummer>", $tmpoutput[1]);

}

geht das vllt anders? oder einfacher?

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi, danke für die schnelle antwort,

aber könntest du es vllt. etwas näher erläutern, das mit dem parsen.

brauch ich dann 3 dateien: test.xml (XML datei ) , test.xsd ( XML schema) und test.php ( ? ) ?

was muss in der test.php stehen?

bes jetzt sieht sie so aus:

$dom = new DOMDocument ();

$dom->load ('test.xml);

if ($dom->schemaValidate ('test.xsd')) {

echo test.xml.' is valid.'."\n";

} else {

echo $file.' is NOT valid.'."\n";

}

und das krieg ich zurück : Class 'DOMDocument' not found in...

Link zu diesem Kommentar
Auf anderen Seiten teilen

so in etwas sieht die antwort aus:

<?xml version="1.0" encoding="UTF-8"?>

<result-set start="0"length="100">

<employee name="Test" additional-name="" title="" initials="472874257" id

<working-relationship line-manager-id="12346789" firma="KKK" telephone="012548795" email="test@test.de" employee-type="">

<line-manager lastname="" firstname="" id="">

</line-manager>

</working-relationship>

</employee>

</result-set>

Link zu diesem Kommentar
Auf anderen Seiten teilen

Spalte ist mir nicht bekanntes Konzept in XML-Dateien. In Anführungsstrichen stehen Attributwerte. Du kannst dir einen XPath Ausdruck bauen (in etwa "//@*"), der dir alle Attribute in der Datei liefert, oder für bestimmte Elemente.

Du kannst dir einen DOM-Baum zu deinem XML erzeugen und dir die Attribute zu jedem Element ausgeben lassen. Damit kannst du dann die Daten, die im XML enthalten sind in deinem Geschäftslogik-Objekte übertragen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...