xml (-transformation) auf websites in der praxis
michael
- xml
hallo alle zusammen,
weiter unten bin ich auf folgenden intressanten beitrag gestoßen:
[pref:t=77955&m=450495]
es darum, eine xml und eine xslt datei durch ein serverseitiges php-script "zusammenzubringen", sodaß daraus eine html-datei ensteht, die der server dann ausliefert/speichert.
hab das gerade mal ausprobiert, und es klappt hervorragend.
nun aber meine meine frage:
wie sieht das in der praxis aus?
angenommen ich habe daten in einer xml-datei, die ich besuchern meiner website in tabellenform in einer ganz normalen html-seite anbieten will.
lässt man dann das serverseitige script einfach einmal die nacht o.ä. laufen und generiert so die webseite sozusagen jede nacht neu?
mir ist noch nicht ganz klar, wie man das in der praxis anwendet?
oder wie es in der praxis gebräuchlich ist?
grüße,
michael
hallo michael,
es gibt zwei möglichkeiten:
1. (x)html aus xml und xsl vom webserver erzeugt
2. das ganze lokal und dann upgeloaded
gruss, michael (auch)
hallo michael,
danke für deine antwort.
im prinzip ist mir das durchaus bekannt.
besonders intressant finde ich es, wenn die (x)html-ausgabe dabei vom webserver bzw. einem script erzeugt wird.
nur wie genau funktioniert das im prinzip?
wenn ich daten aus einer DB hole, wird die ausgabeseite ja sozusagen "on-the-fly" generiert und der besucher hat die aktuellsten daten.
aber wie funktioniert das mit xml/xslt?
wird da jedesmal bei einer seitenaufforderung eine (x)hmtl-datei aus einer xml und xsl-datei generiert und die "alte" datei überschrieben?
oder läßt man da eher einmal die seite generieren und macht es dann nur auf verlangen neu? per cronjob oder so?
hallo michael,
wird da jedesmal bei einer seitenaufforderung eine
(x)hmtl-datei aus einer xml und xsl-datei generiert
und die "alte" datei überschrieben?
ja!
oder läßt man da eher einmal die seite generieren
und macht es dann nur auf verlangen neu? per cronjob
oder so?
auch möglich!
schaue dir den von bereits gefundenen thread nochmals an
gruss, michael
Hallo,
besonders intressant finde ich es, wenn die (x)html-ausgabe dabei vom webserver bzw. einem script erzeugt wird.
nur wie genau funktioniert das im prinzip?
wenn ich daten aus einer DB hole, wird die ausgabeseite ja sozusagen "on-the-fly" generiert und der besucher hat die aktuellsten daten.aber wie funktioniert das mit xml/xslt?
wird da jedesmal bei einer seitenaufforderung eine (x)hmtl-datei aus einer xml und xsl-datei generiert und die "alte" datei überschrieben?oder läßt man da eher einmal die seite generieren und macht es dann nur auf verlangen neu? per cronjob oder so?
Du kannst beides machen.
normalerweise passiert die Transformation on-the-fly: d.h. wenn du mal von dem von dir gefundenen Bsp. ausgehst: jedes mal wenn man diese PHP-Datei aufruft, wird die Transformation durchgeführt und das HTML an den Browser gesendet. Es gibt alo keine alte Datei die überschrieben wird etc.
du kannst natürlich es so machen, dass die Transformation nur einmal gemacht wird und dann die erzeugte HTML-Datei(en) am Server gespeichert werden, aber dann wird auch nicht mehr die PHP-Datei aufgerufen, sondern die HTML-Datei am Server (also ganz normal).
Grüße
Thomas
Hi,
Du kannst beides machen.
normalerweise passiert die Transformation on-the-fly: d.h. wenn du mal von dem von dir gefundenen Bsp. ausgehst: jedes mal wenn man diese PHP-Datei aufruft, wird die Transformation durchgeführt und das HTML an den Browser gesendet. Es gibt alo keine alte Datei die überschrieben wird etc.
du kannst natürlich es so machen, dass die Transformation nur einmal gemacht wird und dann die erzeugte HTML-Datei(en) am Server gespeichert werden, aber dann wird auch nicht mehr die PHP-Datei aufgerufen, sondern die HTML-Datei am Server (also ganz normal).
3. Variante:
Das serverseitige Script prüft, ob die HTML-Datei existiert und neuer ist als die XML- oder XSLT-Datei.
Ist dies nicht der Fall, wird die HTML-Datei neu generiert.
In allen Fällen wird die HTML-Datei an den Client ausgeliefert (readfile oder so ähnlich).
Vorteil:
Das Erzeugen der HTML-Datei geschieht nur so oft wie nötig (Serverlast!), muß aber auch nicht von Hand angestoßen werden (wird leicht vergessen ;-).
Es reicht, XML oder XSLT zu ändern, beim nächsten Request für die HTML-Seite wird sie neu erzeugt.
Nachteil:
der erste, der eine neue Version der HTML-Datei kriegt, muß etwas länger warten.
cu,
Andreas