Webseite-Ausgabe auf Quelltext zwischen zwei Ankerpunkten beschränken

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Webseite-Ausgabe auf Quelltext zwischen zwei Ankerpunkten beschränken

    Hallo Forum,

    für meine Webseiten nutze ich zwar auch PHP, aber im allgemeinen handelte es sich um statische Seiten. Diese Seiten sind immer gleich aufgebaut (Header+Body mit Tabellenstruktur+Footer, wobei Header und Footer dynamisch eingebunden sind).

    Nun möchte ich eine Druckversion meiner Seite anbieten. Dazu möchte ich nur den Inhalt einer bestimmten Zelle ausgeben. Den Rest, der nur Navigation usw. enthält braucht in der Druckversion nicht zu erscheinen. Nun habe ich zu Beginn dieser Zelle immer ein "Flag" in folgender Form gesetzt:

    <!-- Content -->

    Am Ende folgt:

    <!-- Ende Content -->

    Nun bräuchte ich einen PHP-Code, der den Quelltext der Website durchliest und nur den Content (enthält ggf. PHP-Code) zwischen den Flags ausliest und als temporäre Datei abspeichert. Diese temporäre Datei könnte ich dann in meiner Druckversion includen.

    Wie gehe ich am besten vor? Oder fällt jemanden eine bessere/einfachere Lösung ein, eine Print-Version anzubieten?

    Danke für jeden Hinweis!

    Gruß,
    Chriss

  • #2
    PHP-Code:
    preg_match("#<!-- Content -->(.*?)<!-- Ende Content -->#si,$deine_datei,$match); 
    --> $match[1] enthält dann den gefundenen Part der Seite :-)
    diesen Part kannst du dann ja ohne probleme einfach in einer Datei speichern bzw. dynamisch an deine druck-seite weiterreichen!
    C-Ya Toby

    Kommentar


    • #3
      du erzeugt per PHP diese Markierung und du weisst ja auch wann du die
      Markierungen setzst, also warum baust du nicht ein Button oder was auch
      immer ein, der die gleiche Seite nochmals aufruft, die aber sofort mit der 1.
      Markierung anfängt und bei der letzte aufhört, dann hast du deine Druckversion

      Kommentar


      • #4
        Danke für Eure Hinweise. Die von @TobyM gepostete Lösung ist einfach und logisch. Damit werde ich es versuchen.


        Original geschrieben von asp2php
        du erzeugt per PHP diese Markierung und du weisst ja auch wann du die
        Markierungen setzst, also warum baust du nicht ein Button oder was auch
        immer ein, der die gleiche Seite nochmals aufruft, die aber sofort mit der 1.
        Markierung anfängt und bei der letzte aufhört, dann hast du deine Druckversion
        Die Markierungen setze ich per Hand (bzw. werde ich sie noch setzen). Das geschieht nicht via PHP. Die Seiten sind wie erwähnt eigentlich statisch. Den Header- und Footer-Bereich binde ich zwar dynamisch ein, aber nur, um diese Bereich einfach über alle Seiten hinweg ändern zu können.

        Gruß,
        Chriss

        Kommentar


        • #5
          Danke nochmal für die Hinweise!

          Inzwischen habe ich eine erste Lösung umgesetzt, welche aber doch etwas anders geworden ist. Und zwar habe ich meine "Flags"

          <!-- Content --> geändert in <? $content=<<<EOF

          bzw.

          <!-- Ende Content --> in EOF; ?>

          Damit habe ich den eigentlichen Inhalt der Seite in einer Variable abgespeichert. Nachteil dabei ist, das PHP-Code im Inhalt nicht mehr geparst wird. Aber normalerweise befindet sich dort auch kein PHP-Code.

          Vorteil ist, dass ich nun eine Variable habe, die ich leicht durchsuchen kann. Das nutze ich nun dazu, um google-Suchwörter zu kennzeichnen bzw. zu markieren, falls der Besucher über google gekommen ist.

          Wenn die Lösung interessiert, der gebe in google die Suchwortkombination "7er Modelle" ein und klicke auf das erste Suchergebnis.

          Die Druck-Version dieser Seite erhält man über http://www.7er.com/modelle/index.php?druck=ja

          Das Layout werde ich noch anpassen.

          Gruß,
          Chriss

          Kommentar

          Lädt...
          X