Einfaches CGI-Beispiel
Als erstes Beispiel soll ein Perl-Script vorgestellt werden, das die Eingabe des nachfolgenden Formulars auswertet.
Probieren Sie das Beispiel aus und sehen Sie sich den Quelltext des Perl-Programms an.
HTML-Code des Formblattes:
<form method="post" action="/~rztwww/cgi-bin/CGI-Server/beispiel_0.pl"> <table border="1" bgcolor="#eeeeee" cellpadding="6" cellspacing="0"> <tr><td>Ihr Vorname: </td> <td> <input type="text" name="Vorname" value=""> </td> <td> <input type="submit" name="Submit" value="test it"> </td></tr> </table> </form>
- Strukturdiagramm:
Erläuterungen:
-
Das Beispiel wurde im funktionsorientierten Stil programmiert.
-
Die Funktionen des CGI-Moduls werden mit use eingebunden, z.B.
use CGI qw/:standard -private_tempfiles/; use CGI::Carp qw(fatalsToBrowser);
-
Durch die erste use-Anweisung steht die Funktion param
zur Verfügung, über die direkt auf die FORM-Parameter zugegriffen
werden kann. Die Wertzuweisung erfolgt in unserem
Beispiel durch
$Vorname = param('Vorname');
Die Wahl des Perl-Variablennamen $Vorname ist beliebig. Vorgegeben ist allerdings der param-Parameter: 'Vorname' korrespondiert mit dem Namen des entsprechenden FORM-Parameters.
-
Die CGI Umgebungsvariablen sind in der Hash-Variablen
ENV abgespeichert. Z.B. ist die Anzahl der
mit der Request-Methode POST übertragenen Zeichen in der Variablen
CONTENT_LENGTH abgelegt.
Den Inhalt dieser Variablen erhalten Sie im
Perl-Script mit
$ENV{'CONTENT_LENGTH'}