Geteilte Ausgabe

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

  • Geteilte Ausgabe

    Hallo miteinander,

    ich habe vor einigen Wochen ein neues Framework System entwickelt welches die Grundlage von einigen Seiten von mir bilden soll. Bis jetzt bin ich mit der Entwicklung ganz gut voran gekommen. Jedoch habe ich jetzt ein neues Problem welches ich im Vorfeld nicht bedacht habe.

    Die Seite baut sich aus mehreren Dateien zusammen, einmal dem Kopf, der Navigation und daneben den Daten. Wird alles in der index.php mit include geladen. Jedoch möchte ich jetzt noch eine eventuelle Ausgabe für den Drucker bringen. Wenn z. B. jemand die Funktion drucken drückt soll sich ein neues Fenster öffnen und das ganze für den Drucker aufbereitet anzeigen. Jedoch darf hier die Navigation und dre Kopf nicht mitgedruckt werden.

    Dazu habe ich folgende Überlegungen angestellt:
    Wenn ich alles erstmal in Variablen schreibe wie z.B: $kopf, $navi und $body dann könnte ich alles getrennt haben. Aus der Varibable $body könnte ich dann eine HTML Datei erzeugen die abgespeichert wird und im neuen Fenster geöffnet wird. Jedoch weiß ich dann nicht sicher wie ich das entsprechende CSS Laden soll.

    Dazu meine Frage jetzt:

    Macht es Sinn ganze Ausgabenketten in eine Variable zu schreiben um sie dann am Ende des Skriptes auszugeben.

    Der Puffer denn es auch gibt ist ja meiner Meinung nach völlig ungeignet für sowas ...

    CIao HoRaZ
    Es ist unmöglich alles zu wissen,

  • #2
    Blende die Navigation und den Kopf doch über ein Stylesheet für den Druck einfach aus
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Ist das möglich ?

      Hmm wenn das möglich wäre, ist es bestimmt auch eine feine Sache ...

      Was bevorzugt ihr alles immer gleich der Reihe nach auszugeben, oder erst alles in Variablen zu speichern und am Ende auszugeben ???

      Ciao HoRaZ
      Es ist unmöglich alles zu wissen,

      Kommentar


      • #4
        Möglich ist es.

        Ich bevorzuge es, die Daten an meine Templateengine zu übergeben ;-)
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Re: Ist das möglich ?

          Original geschrieben von HoRaZ
          Hmm wenn das möglich wäre, ist es bestimmt auch eine feine Sache ...
          evtl. hast noch nicht ganz verstanden, was mrhappiness dir vorgeschlagen hat - nämlich einfach 2 css-dateien in deine Seite einzubinden:

          Code:
          <link href="screen.css" rel="stylesheet" type="text/css" media="screen" />
          <link href="druck.css" rel="stylesheet" type="text/css" media="print" />
          Beim Drucken verwendet der Browser dadurch die Datei 'druck.css' zur Formatierung - hier am besten auf sowas wie Hintergrundfarben und -grafiken verzichten, nur einfach formatierten Text und die zum Content gehörenden Bilder. Auch die Navi oder andere Dinge die für den Druck nicht wichtig sind, lassen sich damit ausblenden - voraussetzung dafür ist allerdings, dass dein Html entsprechend strukturiert ist.
          Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
          Schön - etwas Geschichte kann ja nicht schaden.
          Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

          Kommentar


          • #6
            Ich hab schon verstanden worum es da geht, aber meiner Meinung nach ist es einfach sauberer es getrennt auszugeben, daher meine Überzeugung zumal halt das mit dem ausblenden immer sehr Browser Abhängig ist und halt dann vielleicht doch mal probleme geben kann, als PDF drucken was weiß ich oder wenn einer auf die Idee kommt dinge zu markieren. Ich kann mir da allerlei vorstellen.

            Und wenn ich dem User von vorneherein eine Druckversion anbiete nimmt er diese eher an, wie wenn er garnichts davon weiß dass ich seperate CSS verwende ....

            Die Sache mit dem Template ist doch im Grunde das selbe wie ich mache, oder täusche ich mich da???

            Da werden doch auch nur Variablen ganz einfach übergeben ....

            Ciao HoRaZ
            Es ist unmöglich alles zu wissen,

            Kommentar


            • #7
              Original geschrieben von HoRaZ
              ...zumal halt das mit dem ausblenden immer sehr Browser Abhängig ist und halt dann vielleicht doch mal probleme geben kann...
              Code:
              display:none;
              macht mit keinem Browser Probleme.

              Wenn du unbedingt meinst, kannst ja das beste aus zwei Welten kombinieren - biete also einen Link zu einer Druckversion an, bei der du die nicht gewünschten Elemente schonmal gar nicht an den Browser sendest, und verpass dem ganzen noch zusätzlich ein CSS für den Druck, wo auf Hintergrundfarben und -bilder verzichtet wird und die Elemente nicht nicht mit fixen Breitenangaben und ähnlichem versehen werden - die haben nämlich häufig beim ausdrucken zur Folge, dass nach rechts was abgeschnitten wird.

              Zu der Sache mit den Templates:
              mrhappiness hat - wenn ich nicht täusche - eine von ihm selbst programmierte und von den Features her recht umfangreiche Template-engine. Mit ein paar Variablen übergeben ist es da nicht getan.

              Ab wann man was als Template-engine ansehen soll ist wohl ein bisschen ansichtssache - theoretisch könnte man ein Script, dass mal eben eine html-datei einliest, einen Platzhalter darin durch irgendeinen Wert ersetzt und dann ausgibt schon als Template-engine bezeichnen - aber eben nur theoretisch
              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
              Schön - etwas Geschichte kann ja nicht schaden.
              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

              Kommentar


              • #8
                Im Endefekt mach ich es ja genau so, nur dass ich keine HTML Datei also kein Template einlese, sondern ich gib einfach die vorher beschriebenen Variablen an der Stelle aus und hab vielleicht dazwischen noch drei Includes wie gesagt Kopf, Navi, Body welche natürlich weitere includes enthalten können. Mein CSS wird für jedes Modul neu aus der DB geholt, jedes Modul also auch jeder Link kan sein eigenes CSS haben.

                Was hat er den genau für Funktionen ...


                Meine letzte entscheidende Frage:

                Wäre es für mich intelligenter wenn ich wie gesagt die Variablen erst am Schluß ausgabe anstatt einem echo zu jeder Zeit und so erst alles in die Variablen schreib ???

                Was würdet ihr machen? mischen oder wirklich alles mit css???


                Ciao HoRaZ
                Es ist unmöglich alles zu wissen,

                Kommentar

                Lädt...
                X