|
Formulare als E-Mail
Formulare und CGI
Ein Problem stellt bei dieser Lösung in letzter Zeit der MS Internet Explorer dar. Dieser WWW-Browser wird zwar von immer mehr Anwendern eingesetzt, aber er ist nicht in der Lage, die mailto-Anweisung in einem einleitenden <form>-Tag richtig zu interpretieren. Von Anwendern, die diesen WWW-Browser benutzen, können Sie keine Formulardaten per E-Mail erhalten (oder Sie erhalten leere E-Mails ohne Formulardaten). Um dieses Problem zu umgehen, können Sie einen öffentlichen CGI-Service wie den CWAK Mailservice in Anspruch nehmen. Dort werden die Formulardaten von einem CGI-Programm verarbeitet und Ihnen dann als E-Mail zugeschickt.
Ein anderes Problem besteht darin, daß die Formulardaten beim Abschicken per Voreinstellung nach einem bestimmten Mime-Type kodiert werden, dem Mime-Typ application/x-www-form-urlencoded. Dabei werden alle Leerzeichen, verschiedene Sonderzeichen und Umlaute durch spezielle Zeichenfolgen ersetzt. So lautet beispielsweise der Satz Danke für die Hilfe! nach der Umwandlung: Danke+f%FCr+die+Hilfe%21. Für Menschen ist das ziemlich ungenießbarer Lesestoff. Um die Kodierung zu verhindern, können Sie im einleitenden <form>-Tag zwar die Angabe enctype="text/plain" angeben. Von Anwendern, deren WWW-Browser diese Angabe jedoch nicht interpretiert, werden Sie dennoch kodierte Formulardaten erhalten. Um kodierte Formulardaten nachträglich in lesbaren Text zu dekodieren, können Sie ein Hilfsprogramm wie WebParse für Windows verwenden.
Für solche Fälle, aber auch für Anwendungsfälle wie automatische Gästebücher, Diskussionsforen, elektronische Einkaufskörbe usw. benötigen Sie ein Programm auf dem Server-Rechner, das die in einem Formular eingegebenen oder ausgewählten Daten sofort verarbeitet und dem Anwender echte Interaktion bietet.
Die Standard-Programmierschnittstelle auf WWW-Servern hierfür ist CGI (Common Gateway Interface). Manche WWW-Server haben - je nach installierter HTTP-Software - auch noch andere Programmierschnittstellen. Der Provider, bei dem Sie Ihre WWW-Seiten speichern, muß Ihnen Zugriff auf diese Programmierschnittstelle erlauben, damit Sie solche Anwendungen selbst realisieren können. Viele Discount-Provider wie CompuServe, AOL oder T-Online erlauben ihren Mitgliedern keinen solchen Zugriff.
Die meist verwendete Programmiersprache für CGI-Scripts ist Perl. Fragen Sie jedoch vor dem Programmieren eines eigenen CGI-Scripts Ihren Provider, welche Art von Programmen auf dem Server ausführbar sind. Wenn Sie in Perl programmieren wollen, fragen Sie den Provider, ob der Server über einen Perl-Interpreter verfügt, und wo genau der Interpreter auf dem Server liegt. In diesem Dokument finden Sie eine Dokumentation: CGI/Perl.
Formulare als E-Mail
Viele Anwender, die von großen Discount-Anbietern wie CompuServe, AOL oder T-Online Speicherplatz für eigene WWW-Seiten erhalten, haben keine Möglichkeit, eigene CGI-Scripts zur Datenverarbeitung auf dem Server-Rechner einzusetzen. Dazu kommt, daß die meisten modernen Seitenanbieter keine Informatiker sind, die sich in Programmiersprachen, fremde Betriebssystemumgebungen, Umgebungsvariablen und Datenübertragungsprotokolle einarbeiten möchten. Dennoch möchten viele Seitenanbieter die Möglichkeit nutzen, mit Hilfe von HTML-Formularen gezielte und einheitlich strukturierte Daten von Besuchern ihrer WWW-Seiten einzuholen. Zu diesem Zweck besteht die Möglichkeit, sich ausgefüllte Formulare als E-Mail zuschicken zu lassen.
Formulare und CGI
Viele Anwendungsfälle für Formulare in HTML benötigen eine Datenverarbeitung auf dem Server-Rechner im WWW. Wenn Sie beispielsweise Ihr gesamtes WWW-Projekt nach einem Begriff durchsuchbar machen wollen, können Sie dem Anwender ein Formular anbieten, in dem er den Suchbegriff eingeben kann. Nach dem Abschicken des Formulars muß ein Programm auf dem Server-Rechner alle Dateien des Projekts nach dem gewünschten Begriff absuchen und eine dynamische HTML-Datei erzeugen, in der Verweise auf alle Seiten enthalten sind, die den Suchbegriff enthalten.
Blättern:
Buttons zum Absenden oder Abbrechen
Frame-Sets und Frames definieren
HTML-Dateien selbst erstellen
Dokumentation: HTML
Formulare