Hallo!
Ich baue grade einen Art Produktgalerie auf XML-Basis, und will, dass der Kunde als erstes eine Auflistung aller Produkte bekommt (was bereits klappt) und dann die Möglichkeit hat ein Produkt anzuklicken und weitere Informationen zu erhalten.
Mein Problem ist nun folgendes, die XML Datei die ich verwende ist mir vorgegeben worden und ich kann sie nicht ändern, um sie leichter nutzbar zu machen...
Die Datei sieht wie folgt aus:
Mein Listingscript sieht wie folgt aus:
Als Parameter verlangt das Listing script nur "p", also den Path (zB. index.php?p=collection1/pants), das Detailscript kriegt im Moment folgende Parameter: detail.php?c=collection1/pants/ABC(<head> des Modelbereiches)/*Artikelnummer*
Wenn der User nun auf "more infos" klickt soll er/sie auf eine Detailseite kommen und eine Großansicht des Bildes sehen, sowie die Möglichkeit haben zum nächsten Artikel (innerhalb einer Model-Gruppe) zu blättern.
Nun lauten meine Fragen:
1.) Wie kann ich ein item-Parentelement finden, was ein txt-Childelement mit einer bestimmten Artikelnummer hat?
2.) Wie kann ich eine Blätterfunktion erstellen, die sich innerhalb eines bestimmten Modellbereiches bleibt? Und merkt, wenn sie beim letzten Elements des Modellbereichs angekommen ist?
Danke schon einmal für die Hilfe
Ich baue grade einen Art Produktgalerie auf XML-Basis, und will, dass der Kunde als erstes eine Auflistung aller Produkte bekommt (was bereits klappt) und dann die Möglichkeit hat ein Produkt anzuklicken und weitere Informationen zu erhalten.
Mein Problem ist nun folgendes, die XML Datei die ich verwende ist mir vorgegeben worden und ich kann sie nicht ändern, um sie leichter nutzbar zu machen...
Die Datei sieht wie folgt aus:
Code:
<?xml version="1.0" encoding="utf-8"?>
<root>
<collection1>
<pants>
<model>
<head><![CDATA[ABC]]></head>
<item>
<pic><![CDATA[test.jpg]]></pic>
<txt><![CDATA[1212]]></txt>
<txt><![CDATA[1234]]></txt>
<txt><![CDATA[1234]]></txt>
<txt><![CDATA[1234]]></txt>
</item>
<item>
/* Struktur gleich wie beim ersten "item" */
</item>
</model>
<model>
/* Struktur gleich wie beim ersten "model" */
</model>
</pants>
<tops>
/* Struktur gleich wie bei "pants" */
</tops>
</collection1>
<collection2>
/* Struktur gleich wie bei "collection1" */
</collection2>
</root>
Mein Listingscript sieht wie folgt aus:
PHP:
<?php
$src = explode("/", $_GET['p']);
$config = explode(",", $_GET['c']);
$data = simplexml_load_file($src[0].'_'.$src[1].'.xml');
$path = $_GET['p']."/model";
foreach ($data->xpath($path) as $model) {
echo "<li><h2>".$model->head."</h2></li>";
foreach ($model->item as $item) {
echo "<li><img src=\"img/".$_GET['p']."/thumbs/".$item->pic."\" /></li>";
echo "<li>article: ".$item->txt[0]."</li>"; /* Artikelnummer */
echo "<li>style: ".$item->txt[1]."</li>";
echo "<li>fit: ".$item->txt[2]."</li>";
echo "<li>mat: ".$item->txt[3]."</li>";
echo "<li class=\"last\"><a href=\"detail.php5?c=".$_GET['p']."/".$model->head."/".$item->txt[0]."\">more infos</a></li>";
}
}
?>
Als Parameter verlangt das Listing script nur "p", also den Path (zB. index.php?p=collection1/pants), das Detailscript kriegt im Moment folgende Parameter: detail.php?c=collection1/pants/ABC(<head> des Modelbereiches)/*Artikelnummer*
Wenn der User nun auf "more infos" klickt soll er/sie auf eine Detailseite kommen und eine Großansicht des Bildes sehen, sowie die Möglichkeit haben zum nächsten Artikel (innerhalb einer Model-Gruppe) zu blättern.
Nun lauten meine Fragen:
1.) Wie kann ich ein item-Parentelement finden, was ein txt-Childelement mit einer bestimmten Artikelnummer hat?
2.) Wie kann ich eine Blätterfunktion erstellen, die sich innerhalb eines bestimmten Modellbereiches bleibt? Und merkt, wenn sie beim letzten Elements des Modellbereichs angekommen ist?
Danke schon einmal für die Hilfe