KriZa: Drucken von Formularen

Hallo,

das Thema ist ein mix aus PHP und HTML.

Ich habe ein Onlineformular (PHP), das von Kunden ausgefüllt wird. Klickt der Kunde auf absenden, werden per PHP neue Datensätze in meinem MySQL-Backend angelegt. Nun muss der Kunde allerdings zusätzlich eine Unterschrift leisten. hierzu soll er das Formular mit den gerade von ihm eigegebenen Daten ausdrucken. Das Problem ist allerdings, dass es auf ein von uns entwickeltes Formular kommen soll (mit Grafik und so). Nun habe ich schon etwas gestöbertund und eine Möglichkeit per PHP to PDF gefunden. Allerdings lässt das mein Provider nicht zu. Somit muss etwas anderes her. Ich habe mal von einer Möglichkeit gehört, in der Druckansicht eine andere Formatierung zu ermöglichen. Wie geht das, oder kennt jemand eine einfachere Möglchkeit?
Es soll entweder so aussehen, dass ein Link dasteht, der enweder das Dokument abspeichert, oder ein zweiter Link, der es gleich ausdruckt.

  1. Hallo,

    ... hierzu soll er das Formular mit den gerade von ihm eigegebenen Daten ausdrucken. Das Problem ist allerdings, dass es auf ein von uns entwickeltes Formular kommen soll.

    Das klingt unlogisch. Da soll ein Web- Besucher seine UNterschrift geben, damit er sich euch gegenüber identifiziert? Also ein Unbekannter. Und der hat dann zuhause aber eure Original- Formulare liegen?

    Druck auf Formulare geht meines Wissens nur unter Mithilfe des Benutzers. Er muss im Browser nämlich Seitenränder und Format (hoch, quer) richtiog einstellen.

    Habe noch keine Möglichkeit gefunden, Randangaben des Browsers durch HTML zu beeinflussen, nicht mal das Hoch- und Querformat ist wählbar.

    Wenn der Benutzer das alles einstellt, kann man HTML- mäßig eine bestimmte Schriftgröße beim Druck vorschreiben:

    <style type="text/css" media="print">
      body {font-size:9.5pt!important}
      @page { size:landscape;}
    </style>

    Die Schriftgröße wird vom FF akzeptiert, das Querformat weder vom FF noch von der Opera.

    Ich habe mal von einer Möglichkeit gehört, in der Druckansicht eine andere Formatierung zu ermöglichen. Wie geht das, oder kennt jemand eine einfachere Möglchkeit?

    Also muss es doch nicht euer Original-Formular sein? Ein Überweisungsformular wird z.B. von der Bank abgelehnt, wenn ich es mit einem Schwarzdrucker ausdrucke. Die Originalfarbe ist orange, das "übersieht" der Klarschriftleser.

    Also erst mal klären, ob es euer Originalformular in den richtigen Abmessungen und Farben sein muss.

    Wenn nicht, kannst du auch ein HTML- Formular ansehnlich zum DRucken gestalten.

    Kalle

    1. Das Formular sollte schon auf eine A4 Seite begrenzt sein. kann man denn nicht ein Browserfenster in einer bestimmten Bemaßung öffnen, ohne dass die vom User geändert werden kann, so dass es genau auf eine A4 Seite passt? Mhh, aber alles wahrscheinlich zu kompliziert. FF Opera und IE machen das whrscheinlich unterschiedlich.

      Wie bekomme ich denn meinen Link so hin, dass ein neues Fenster geöffnet wird und automatisch das Ausdrucken-Fenster geöffnet wird?

      werde zwischenzeitlich mal mit einer tabelle experimentieren.

      dank erstmal für deine antwort

      1. Das Formular sollte schon auf eine A4 Seite begrenzt sein.

        Okay, davon gehen die unkalkulierbar im Browser eingestellten Ränder ab, sodass nur wenig übrig bleibt.

        Eine A4- Seite wäre sowas wie
        <div style='width:210mm; height:297mm; border:1px solid #000'>
        ...
        </div>
        Drucke das mal aus und verkleinere die Maße, bis der Border komplett zu sehen ist. Und dann nimm einen anderen Browser und beginne von vorn.

        kann man denn nicht ein Browserfenster in einer bestimmten Bemaßung öffnen, ohne dass die vom User geändert werden kann

        Ja, mit Javascript:
        window.open(url,"Fenster1","width=800,height=400,left=10,top=10,scrollbars=no,resizable=no");

        Bringt dich aber nicht weiter, weil der Druck sich um die Maße des Browserfensters nicht kümmert.

        Wie bekomme ich denn meinen Link so hin, dass ein neues Fenster geöffnet wird und automatisch das Ausdrucken-Fenster geöffnet wird?

        Neues Fenster siehe oben, das neue Dokument sollte diese Zeile haben:
        <body onLoad="window.print()">

        werde zwischenzeitlich mal mit einer tabelle experimentieren.

        Experimentieren ist immer gut, wenn man viel Zeit hat. Leider kann dein Problem nur mit einem PDF gelöst werden.

        Kalle

        1. Moin

          kann man denn nicht ein Browserfenster in einer bestimmten Bemaßung öffnen, ohne dass die vom User geändert werden kann

          Nein, denn

          Ja, mit Javascript:
          window.open(url,"Fenster1","width=800,height=400,left=10,top=10,scrollbars=no,resizable=no");

          bringt in modernen Browsern gar nix, denn sowas lässt sich per Browser-Voreinstellung auf normale Fenster/Tabs umleiten. Und das ist gut so!

          Gruß
          rfb

          --
          Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
          (Galileo Galilei)
          1. Moin

            bringt in modernen Browsern gar nix, denn sowas lässt sich per Browser-Voreinstellung auf normale Fenster/Tabs umleiten. Und das ist gut so!

            Was lernen wir daraus? Alles ist relativ, glaube nicht, was du siehst. Und das ist gut so!

            Na, denn isses ja gut.

            Kalle