Page-type
Description

WEB-Info-System

öffentliche  Sammlung von Informationen / Veröffentlichungen / Links usw. aus unterschiedlichsten Quellen
WIS

Publisher
EVM Peter Morgenroth
webmaster@peter-morgenroth.de

2005-09-03
Author
Peter Morgenroth




Title
PHP-Formmailer






 Was machen wir ?
Wir bauen einen PHP-Formmailer. Nicht irgendeinen, wir bauen einen komfortablen Formmailer mit Checkboxen zur Kontrolle und mit Kopie-Funktion.. Ich gehe dovon aus, dass bekannt ist wozu es gut ist, einen Formmailer überhaupt zu verwenden und das ferner bekannt ist wie ein PHP Formmailer arbeitet. Im Seminar könnte man das noch einmal erklären, hier im Tutor nicht.
 Warum ?
Ich habe verschiedene Tutors zum Formmailer gelesen und mich dann jedes mal gefragt, konnten die das nicht erklären, wollten die nicht, bin ich zu unbedarft es zu begreifen was da verklärt wird ? Da wird die get- und die post-Methode erklärt und obwohl gleich Anfangs gesagt ist, "get", weil an die URL angeghängt, ist quatsch, werden beide Methoden fleißig  beschrieben und "keie Sau" sieht mehr durch. Als mich letzte Woche jemand, der nun im WEB wirklich zuhause ist fragte ob ich nicht mal wüßte wie ...
Da war es nun endlich so weit. Also ich versuche mal für jemand, der nun wirklich keine Kenntnisse von PHP hat, einen PHP-Formmailer-Baukasten zu erstellen und allgemein-verständlich zu erklären. Aus diesem Grund werde ich niemanden mit
Sendemethoden, dem Formattribut action und den Variablen in PHP maltetieren. Für meine Begriffe ist es wichtig, dass das Formular schnell anpaßbar ist und fehlerfrei vom Hocker läuft.
 Werkzeug 1
PHP - Editor    >    http://www.weaverslave.ws
Weaverslave ist Freeware. Sie sind berechtigt, die SOFTWARE kostenlos und zeitlich uneingeschränkt zu nutzen.
 


Die beiden Editoren, der Windows Explorer und Paint Shop Pro als Grafik-Werkzeug zur  Ergänzung.
 Werkzeug 2
HTML - Editor     >     Mozilla Composer     >     http://mozilla.kairo.at/?d=x&i=release&m=i
Mozilla ist Freeware und  eine moderne Open-Source Web- und E-Mail-Suite, die Module für Browser, Mail & Newsgroups, Erstellen von Webseiten, Chat, und einiges mehr enthält. Ich arbeite mit Moz. 1.6 und für die anderen "Künstler" habe ich seit Jahren nur ein mildes Grinsen übrig.  Die neueste Creation ist NVU, verwende ich aber derzeit noch nicht, da noch einige Probleme auftreten. Von Firefox haben Sie sicher schon etwas gehört, Firefox ist auch Mitglied dieser Familie. Filezilla auch, ein sehr gutes FTP-Programm, auch Freeware.
Technologie
1. Composer

Feinste "altmodische" Tabellentechnik,
dazu mehr im Tutor:
"Homepages mit dem  Mozilla Composer
erstellen".


























Wir bauen zuerst das Formular mit dem Composer. Jetzt dürfen noch keine PHP-Bestandteile dabei sein. Der Composer, als HTML-Editior schmeißt diese gnadenlos raus. Um sich klar zu werden wie das Formular aussehen soll, um Farben zu setzen  Schriftgrad und  Schriftschnitt festzulegen, ist das ideal, da der Composer ja alles sofort anzeigt und den dazugehörigen Quelltext im Hintergrund schreibt.


hier kommt Tabelle 2 rein

Zuerst fügen wir eine Tabelle ein, 3 Zeilen, 1Spalte, Border 0. In die oberste Zeile kommt später der Betreff, in die mittlere Zeile kommt der Erklärungstext und in die untere Zeile die Tabelle mit den Formularelementen. <td style="vertical-align: top; text-align: center;"><table cellpadding="2" cellspacing="1" border="0"
 style="text-align: left; background-color: rgb(0, 0, 0);">




Tabelle 2, nimmt die eigentlichen Elemente des Formulars auf. und besteht aus 3 Spalten, links für Beschriftung, mittig für die Formulareingabefelder und rechts für die Kontrollcheckboxen. Es werden so viel Zeilen wie aufgrund der Gestaltung des Formulars nötig. sind gewählt. Hier sind nur die 4 untersten Zeilen dargestellt.





Der 1 px-Außenabstand von Tabelle1 mit schwarzer Tbellenfarne und blauer
Zellenfarbe bei 2px-Innenabstand bewirkt, dass die Tabelle 2 zart umrandet wirkt.

Unten sieht man die Arbeitsweise des Composers. Links (normal) sind beide




Tabellen, schon ineinander eingefügt, zu



sehen, so wie sie im Composer entworfen werden. Rechts (Quelle) ist der Quelltext zu sehen, den der Composer quasi im Hinter- grund mitschreibt.  Um schnell voranzu- kommen, werden die Input Typ Text Felder und die Checkboxen  einfach erst einmal einkopiert und die Beschriftung vorgenommen.


Im Head wird noch ein entsprechender Titel
<html>
<head>
  <title>Anforderung Unterlagen für Aktien</title>
und der Link auf die CSS-Datei  <link rel="stylesheet" href="winform1.css" type="text/css">  eingefügt.
Da wir die komplette Adresse, einschl. Land brauchen, die e-Mail-Adresse und das Alter des Interessenten, ist klar, 8 Überprüfungen der Eingaben. also 8 Abfragen. Das soll gleich auf dem Client, während der Eingabe stattfinden, also in Javascript.






Kommen wir , bevor wir zum Teil PHP kommen, zu den Bauelementen, die bei einem Formular Verwendung finden oder finden können.
Die wissenschaftliche Grundlage finden Sie bei SelfHTML von Stefan Münz.
 Beispielformular
Um die Sache absolut nachvollziehbar zu machen, habe ich ein Beipiel-Formular, das wir jetzt auseinandernehmen werden.
Machen Sie das auch, einfach > Seite speichern unter <, einmal original als .php und noch einmal, da geben Sie die Extension .html und dann experimentieren Sie nach herzenslust damit herum. Klar, wenn Sie keine Testumgebung installiert haben müssen Sie halt jedesmal auf Ihren Space hochladen, um das Ergebnis zu sehen,
Der Aufruf erfolgt mit Javascript in einem neuen Fenster (PopUp).
Dateiname Beispielformular:

znv-info-PHP.php
> aufrufen <
link
javascript:BAFenster()
Aufrufscript
im
<HEAD>
.........
.........
</HEAD>
width=480,
height=500,
ist die Fenstergröße

left=200,
top=150,
ist die Position
auf dem Bildschirm
  <script type="text/javascript">
<!--
function BAFenster() {
 MeinFenster =
 window.open("znv-info-PHP.php", "Zweitfenster", "width=480,height=500,left=200,top=150,scrollbars");
 MeinFenster.focus();
}
//-->
  </script>
Der Vorteil dieser Fenster-Technik, Sie brauchen nicht jedesmal an die ganze Seite heran, wenn sich das Formular ändert, wenn Sie mehrere Formulare einbinden möchten usw.
 Bauelemente





















Dank Mozilla Composer hatten wir bisher hervorragenden Sichtflug. Wenn wir uns jetzt PHP zuwenden bedeudet das Blindflug. Der
Weberknecht (Weaverslave)  ist zwar ein hervorragender Editor, aber im Gegensatz zum Composer kein Editor vom Typ WYSIWYG [ˈwɪziwɪg] ist die Abkürzung für das Prinzip What You See Is What You Get ("Was du siehst, ist, was du bekommst.") (WIKIPEDIA)
Wer hat auf seiner Rechenmaschine z.B. APACHE mit funktionsfähigem PHP installiert um wenigstens testen zu können ?. Hmmm, danke.