#!/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";
|