Seite 1 von 1

XML Seite einbinden

Verfasst: 07.01.2005, 00:59
von Pretender
Moin Moin,

ich habe eine XML Seite per Code eingebunden und bekomme viele hieroglyphen auf meiner Website angezeigt.

Ich vermute, dass es an <?xml version="1.0" encoding="utf-8" ?> liegt , da ich aber keine php experte bin kann es natürlich an vielen anderen sachen liegen.

Auf der XML Seite steht z.b. :

Mobile AMD Sempron&#153; 2800+, Microsoft® Windows® XP Home

eingefügt per php code steht auf meiner Seite allerdings:

Mobile AMD Sempron™ 2800+, Microsoft® Windows® XP Home


Also nicht ganz das so wie es sein soll: hier noch fix der code:

<?php
$rdffile = "https://blabla.xml";
$content = implode ("", file ($rdffile));
preg_match_all("|<product>(.*)</product>|Uism",$content, $items, PREG_PATTERN_ORDER);
for ($i=0;$i<count($items[1]);$i++)
{ preg_match_all("|<name>(.*)</name>(.*)<description>(.*)</description>(.*)<productUrl>(.*)</productUrl>(.*)<price>(.*)</price>(.*)<currency>(.*)</currency>(.*)<fields>(.*)</fields>|Uism",$items[1][$i], $regs, PREG_PATTERN_ORDER);
echo
"".$regs[1][0]."
<br>
".$regs[3][0]."
<br><br>
Preis: ".$regs[7][0]."
".$regs[9][0]."
<br>Hier sehen Sie die Details des ".$regs[1][0]."
<br>
- ".$regs[11][0]."
<br>
<a href='".$regs[5][0]."' target='_blank'>Klicken Sie hier für alle Details</a><br><br>\n"; }
?>

auf dieser seite: --> https://www.eikapo.de/test/test1.php habe ich die xml seite zum testen eingebunden.

vieleicht hat ja einer ne idee was ich ändern müsste oder ob es eventuell doch ander xml seite liegt.
vielen dank.

Verfasst:
von

Verfasst: 07.01.2005, 01:29
von Southmedia
versuch ma statt $regs[1][0] einfach utf8_decode($regs[1][0]) zu schreiben.

Verfasst: 07.01.2005, 11:47
von Nexus
Hi,

oder schau dir mal die XML_parser-Funktionen von PHP an. Dann bist du wesentlich flexibler. Evt. ist auch das PEAR-Packet XML_(Un)Serializer was für dich.

Gruß
Nexus

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 07.01.2005, 13:18
von Pretender
moin moin,

@ Southmedia

vielen dank, mit utf8_decode($regs[1][0]) ... funktioniert es jetzt.

@nexus
mag sein das es so wie du schriebst auch geht aber ich muss dir sagen: ich habe absolut keine ahnung was du damit meinst, da ich nicht viel über php weiss.

aber vieleicht hast du ja ne lösung für das andere problem:


wenn man auf der seite: https://www.eikapo.de/test/test1.php schaut , steht oben ein komplettes produkt mit DETAILS. die details holt sich das script aus:

- <fields>
- <field>
<name>Abmessungen (Breite x Tiefe x Höhe)</name>
<value>35.8 cm x 27.2 cm x 3.3 cm</value>
</field>
- <field>
<name>Audioausgang</name>
<value>Soundkarte</value>
etc. .......
</field>
- </fields>

bei dem 2. produkt darunter, sollte normal:
<name>AMILO PRO V2020</name>
<description>Intel® Centrino&#153;(Intel® Pentium® M 725 1,6 GHz), Microsoft® Windows® XP Professional, 2x256 MB, 60 GB, 15,1", DVD+/-RW DL, WLAN.</description>

stehen. Da es aber bei dem 2 Produkt keine <fields>- </fields> gibt, wird auch der <name> und keine <description> nicht gezeigt.

Die Frage ist nun: wie überede ich das script mir auch ein produkt anzuzeigen wenn dieses keine details in form von <fields>- </fields> auf der XML seite hat.

ich hoffe ihr habt verstanden was ich meine.
vielen dank!

Verfasst: 18.01.2005, 21:12
von naden
Hi,
@pretender, dein Script in Ehren, aber das ist wirklich sehr übler Code.

Ich kann nur allen, die die Möglichkeit haben, empfehlen, PHP5 mit
simplexml zu installieren und Ihre alten RSS-Libs wegzuwerfen.

Diese PHP-Erweiterung ist ein wahre Freude für alle Freunde von
minimalistischem Code.

Zwar ist die Funktion experimentell und braucht bei großen Objecten etwas
Speicher, da Ram aber sehr preiswert ist, lont der Einsatz, da der Code auf
ca 5% schrumpft.

Genaueres hier
https://de.php.net/manual/de/ref.simplexml.php

Verfasst: 19.01.2005, 01:24
von Pretender
ist leider nicht mein eigener server. nojo, muss mal schauen ob die das unterstützen, ich glaube da was gelesen zu haben.

und du denkst, dass ich damit die fields auslesen kann?
weil , ich habe da schon mal ein paar tage dran rumgespielt. das problem was ich nicht üerbwinde, sit im grunde, das mir das script immer nur das erste :

<name>Abmessungen (Breite x Tiefe x Höhe)</name>
<value>35.8 cm x 27.2 cm x 3.3 cm</value>

in die seite schreibt und die weitere beschreibung zu dem produkt, die ebenfalls in <name> und value> steht aber irgnoriert und umgehend bei dem nächsten produkt weitermacht.