#!/usr/bin/perl
read(STDIN, $input, $ENV{'CONTENT_LENGTH'});
@pairs = split(/&/, $input);
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;
}
# Formularname
$name = $FORM{'name'};
print "Content-type: text/html\n\n";
# Hier wird das eigentliche Programm ausgeführt
# Ist das Textfeld leer wird der erste Bereich angezeigt
if ($name eq ""){
&header; # Aufruf der Subroutine Header
print qq~
<font face="Verdana, Arial" size="2">Wie heissen Sie?</font>
<form aktion="weiter.pl" method=post>
<input type=text name="name" size="30"><br>
<input type=submit value="Weiter"><br>
</form>
~;
&footer; # Aufruf der Subroutine Footer
} else {
# So verdreht man Tatsachen *gg*
# Mit reverse dreht man den String um
$verkehrt = reverse $name;
&header; # Aufruf der Subroutine Header
print qq~
So so, Sie heissen also <b><font face="" color="#800000">$verkehrt</font></b>?!?<br>
Merkwürdig...hatten Sie nicht <b>$name</b> eingegeben?
~;
&footer; # Aufruf der Subroutine Footer
}
#############################################
# Seitenheader Subroutine
sub header {
# Seitenheader
open (HEADER, "header.html");
flock HEADER, 2;
@header = <HEADER>;
close HEADER;
# Printet die header.html Datei
print "@header\n";
}
#############################################
# Seitenfooter Subroutine
sub footer {
# Seitenfooter
open (FOOTER, "footer.html");
flock FOOTER, 2;
@footer = <FOOTER>;
close FOOTER;
# Printet die footer.html Datei
print "@footer\n";
}
#############################################
Demo: ansehen
|