Anfang Zurück Weiter Ende Index Homepage Text
#!/usr/local/bin/perl

#### Beispiel der Variablenübergabe mit POST
#### -> Die übergebenen Daten werden NICHT im
####    URL angezeigt.

#### Ausgabe des HTTP-Headers
print "Content-type: text/html\n\n";

#### Start der HTML-Ausgabe
print "<HTML>\n";
print "<HEAD></HEAD>\n";
print "<BODY>\n";

#### Lesen der mit POST übergebenen Variablen
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});

#### Aufsplitten auf die einzelnen Variablen des Formulars
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
    ($name, $value) = split(/=/, $pair);
    $value =~ tr/+/ /;
    $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    $FORM{$name} = $value;
}

#### Wenn der Button 'Abschicken' gedrückt wurde
if ($FORM{'PRESSED'} eq "Abschicken") {
    print "Der Vorname ist: '<B>$FORM{'VORNAME'}</B>'<BR>\n";
    print "Der Nachname ist: '<B>$FORM{'NACHNAME'}</B>'\n";
}
#### ansonsten ( =Startformular)
else {
    print "<FORM METHOD=\"POST\" ACTION=\"$ENV{'SCRIPT_NAME'}\">\n";
    print "Geben Sie einen Vornamen ein:<BR>\n";
    print "<INPUT NAME=\"VORNAME\"><P>\n";
    print "Geben Sie einen Nachnamen ein:<BR>\n";
    print "<INPUT NAME=\"NACHNAME\"><P>\n";
    print "<INPUT TYPE=\"SUBMIT\" VALUE=\"Abschicken\" NAME=\"PRESSED\">\n";
    print "</FORM>\n";
}

#### Beenden der HTML-Ausgabe
print "</BODY>\n";
print "</HTML>\n";

Folie 16 von 28