michael: xml (-transformation) auf websites in der praxis

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

  1. 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)

    1. 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?

      1. 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

        http:?t=77955&m=450495

        gruss, michael

      2. 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.

        1. 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.

        2. 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

        1. Hi,

          Du kannst beides machen.

          1. 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.

          2. 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

          --
          MudGuard? Siehe http://www.Mud-Guard.de/
          Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.