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™ 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"; }
?>
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.
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™(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!
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.
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.