• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ausgabe von Krankmeldungszettel mit PHP

Status
Für weitere Antworten geschlossen.

m3alde

Neues Mitglied
Ich war die Tage krank und an unserer Schule ist es so das es solche Krankmeldungszettel gibt welche ausgefüllt werden müssen.
Nun habe ich in meiner langeweile überlegt wie man die Krankmeldung ein bisschen anders und "bequemer" auszufüllen könnte. Ich habe auch gleich angefangen und habe ein formular erstellt in dem man die ganzen Felder eingeben kann. Dann soll man auf Abschicken klicken und auf der nächsten Seite soll der Fertige Zettel angezeigt werden. DAs man ihn so ausdrucken kann und nurnoch unterschreiben braucht. Ich bin nun bei der 2. Seite, der Ausgabeseite. Nur weiss ich nicht wie ich den Zelltel so auf den Bildschierm bringe das er sofort ausgedrickt werden kann, das bedeutet er muss die richtigen maße haben. Und das is genau meine Frage.

Ich hoffe ihr könnt mir helfen. Falls es verständnisprobleme gibt fragt einfach nach ;)
MfG
m3alde
 
Werbung:
Ok, da brauchst du ein CSS-Deutsch Übersetzer...:mrgreen: pack alles in ein <div>, die felder dann nochmal in ein <div> und sowas wie "Name:" einfach hinschreiben. und dann die divs mit padding, margin, (border) und was du sonst noch willst anpassen
 
Also meinst du ich sollte es mit CSS Probieren!?! ok.
Aber ich weiss nicht wie breit ich den Div-Container machen soll damit der auch die gleichen Maße hat sodas es auch gut auf ein DIN A4 Blatt Passt. So wie das schon bestehende Formular welches ich eingescannt habe und den Link oben gepostet habe;)
 
Werbung:
Also mit CSS solltest du dann nicht mit px arbeiten, da dann die Breite je nach Bildschirm Variiert.
SELFHTML: Stylesheets / CSS-Formate definieren / Maßeinheiten, Farbangaben und Wertzuweisung
Schau mal dort, alle Numerischen Angaben die Absolut ist, kannst du benutzen (also sowas wie pt, cm oder mm)

Ein anderer Weg wäre, dass du das leere Bild einscannst und speicherst und dann mit PHP die Daten an die richtige Stelle in das Bild schreibst und es als Kopie wieder speicherst. Dafür kannst du das Modul GD benutzen PHP: GD - Manual
 
Vielleicht kann man mit php-Bilderzeugung Angaben für die Druckgröße machen. Das weiß ich aber nicht.

html-Seiten kann man mit css auch für Druck gut gestalten.
Angaben zur Gesamtbreite / Seitenränder solltest du dabei ganz weglassen. Je nach Druckereinstellung sind die bereits vorgegeben und durch css nicht veränderbar.
Das breiteste dürfte die Tabelle sein. Mit fontsize: 10pt; passt sie sicher auf eine A4/Hochformat-Seite.


Als Einheit würde ich auch pt empfehlen.
 
Zuletzt bearbeitet:
eine pdf-class suchen und das ganze als pdf ausgeben lassen.

mit css2 kann man seitenangaben machen.
Code:
@page { size:21.0cm 14.85cm; margin:5.7cm 2cm 1.4cm 1cm; }
entspreicht einer A4 seite
 
Werbung:
Ich habe mich entschieden das ich es nun mit CSS mache.
Habe auch schon fast das ganze Formular abgetippt. Bis jetzt habe ich provisorisch für die Striche wo normal drauf geschrieben wird einfach den unterstrich "_" benutzt. DAs ist allerdings nicht gerade eine gute lösung :p Also wollte ich fragen wir ich am besten soch eine Linie machen kann, so das nachher auch die auf der vorherigen Seite angegebenen daten AUF der Linie erscheinen.

Desweiteren habe ich das Problem das ich nun 5. Container im CSS definiert habe, nun wird der 5. nichtmehr angezeigt. Egal was ich mache, woran liegt das?

MfG
m3al.de
 
Ok das habe ich nun, ich hatte ein "}" vergessen.

Bis jetzt habe ich provisorisch für die Striche wo normal drauf geschrieben wird einfach den unterstrich "_" benutzt. DAs ist allerdings nicht gerade eine gute lösung :p Also wollte ich fragen wir ich am besten soch eine Linie machen kann, so das nachher auch die auf der vorherigen Seite angegebenen daten AUF der Linie erscheinen.
 
Werbung:
...
Bis jetzt habe ich provisorisch für die Striche wo normal drauf geschrieben wird einfach den unterstrich "_" benutzt. DAs ist allerdings nicht gerade eine gute lösung :p Also wollte ich fragen wir ich am besten soch eine Linie machen kann,
...
Mit border-bottom: Breite Linenart Farbe;
Code:
...
...
body {
font-family: arial;
font-size: 10pt;
line-height: 1.4;
}
  

th, td {
border: 1pt solid black;
vertical-align: top;
padding: 2pt;
  }
 
table {
border-collapse : collapse;
width: 100%;
margin-top: 10pt;
  }


#std th {
text-align: left;
}

#angaben_erz_ber {
border: 1pt solid black;
padding: 10pt;
width: 100%;
}

dl {
clear: left;
}

dt {
width: 145pt;
float: left;
clear: left;
}

.erziehungsberechtigter {
float: left;
}

.erziehungsberechtigter span {
display: block;
}

[B][COLOR=DarkRed] .variable {
border-bottom: 1px solid black;
font-weight: bold;
}[/COLOR][/B]

...
...

<div id="angaben_erz_ber">
<p class="erziehungsberechtigter"><span class="variable">Name, Nachname</span> Erziehungsberechtigter</p>

<dl>
<dt>Mein Sohn / meine Tochter:</dt>
<dd><span class="variable">Name, Nachnahme</span></dd>
<dt>Konnte am / von</dt>
<dd><span class="variable">dd.tt.jjjj ss.mm.</span> bis: <span class="variable">dd.tt.jjjj ss.mm.</span></dd>
</dl>
<!--usw.-->

</div>
<table>
  <thead>
    <tr>
      <th>Fach</th>
      <th colspan="2">Montag</th>
      <th colspan="2">Dienstag</th>
      <th colspan="2">Mittwoch</th>
      <th colspan="2">Donnerstag</th>
      <th colspan="2">Freitag</th>

    </tr>
    <tr id="std">
      <th>Std</th>
      <th>Unterschr.<br />Lehrkr.</th>
      <th>Fach</th>
      <th>Unterschr.<br />Lehrkr.</th>
      <th>Fach</th>
      <th>Unterschr.<br />Lehrkr.</th>
      <th>Fach</th>
      <th>Unterschr.<br />Lehrkr.</th>
      <th>Fach</th>
      <th>Unterschr.<br />Lehrkr.</th>
      <th>Fach</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>1</td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
    </tr>

  </tbody>
</table>
Das Design sieht im auf dem Bildschirm schrecklich aus. Im Druck passt es sich aber den Seitenbegrenzungen an.
Wenn es auch auf dem Bildschirm/Browseransicht gut aussehen soll, musst du zwei css-Dateien schreiben:
Code:
<link rel="Stylesheet" type="text/css" href="screen.css" media="screen" />
<link rel="Stylesheet" type="text/css" href="print.css" media="print" />

PDF finde ich viel schwieriger zu gestalten.
 
Zuletzt bearbeitet:
Kennt jemand vielleicht eine andere und vielleicht schönere/kürzere lösung für die Linien/"Striche"?

Edit:
Code:
<html>
<body>
<head>
<style type="text/css">

#umrandung  {
             width:17cm;
             height:25.2cm;
             border-style:absolute;
             border-color:black;
             

             }

#eins          {
             width:17cm;
             height:6.8cm;
             border-style:solid;
             border-color:black;
             border-top-width:1px;
             border-bottom-width:1px;
             border-left-width:1px;
             border-right-width:1px;
             padding-left:7px;

             }

#zwei        {
             width:17cm;
             height:2cm;
             border-style:solid;
             border-color:black;
             border-top-width:1px;
             border-bottom-width:1px;
             border-left-width:1px;
             border-right-width:1px;
             padding-left:7px;
             }

#drei        {
             width:17cm;
             height:2.6cm;
             border-style:solid;
             border-color:black;
             border-top-width:1px;
             border-bottom-width:1px;
             border-left-width:1px;
             border-right-width:1px;
             padding-left:7px;
             }

#vier        {
             width:17cm;
             height:8cm;
             border-style:solid;
             border-color:black;
             border-top-width:1px;
             border-bottom-width:1px;
             border-left-width:1px;
             border-right-width:1px;
             padding-left:7px;
             }
             
h1           {
             text-align:right;
             font-size:10px;
             }




</style>


</head>
<body>

<b>1.</b>
<div id="umrandung">
<div id="eins">
<br><b>_______________________<br>
Erziehungsberechtigte/r</b>
<br>
<br>
Mein Sohn/meine Tochter___________________________________________________________
<br>
<br>
konnte am/vom_________________________ bis _______________________________________

<br>
<br>
wegen___________________________________________________________________________
<br>
<br>
die Schule nicht besuchen.
<br>
________________________________________________________________________________
<br>
<a align="left">Ort, Datum </a>  <b><a align="right">Unterschrift d. Erziehungsberechtigten</a></b>
</div>

<br>

<b>2.</b>
<div id="zwei">

Die Entschuldigung hat rechzeitig vorgelegen. <br><br>

________________________________________________________________________________
<br>
Datum <b>Unterschrift d. KlassenlehrerIn</b>

</div>
<br>
<div id="drei">

1. Entschuldigung der Eltern für die Fehlzeit des Kindes<br>
2. Unverzüglicge Vorlage der Entschuldigung bei dem/der KlassenlehrerIn<br>
3. Ausfüllen der fehlzeiten im Stundenplan<br>
4. Vorlage der Entschuldigung bei den FachlehrerInnen innerhalb einer Woche<br>
5. Abgabe der vollständig ausgefüllten Entschuldigung bei den KlassenlehrerInnen

</div>

<br>
<b>3./4.</b>

<div id="vier">
</div>

</div>
</body>
</html>

So sieht meine auswertung.php datei aus, an welche die daten des Formulars gesendet werden.
Nur weiss ich noch nict wie ich das nun mit den "Strichen" lösen soll. -.-
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück
Oben