Programmierung mit PERL

Verbindung zu HTML - Interaktive Internetseiten

von Roland Bernert, R egionaler Arbeitskreis Internet am Oberschulamt Karlsruhe

Eine einfache Internetseite wird durch Perl ausgegeben:
#! /usr/bin/perl
# e i n e  e i n f a c h e  H T M L - S e i t e  e r z e u g e n
# ==============================================================
print "Content-Type: Text/html\n\n";
print "<HTML>\n";
  print "<HEAD><TITLE> Test: Perlscripts </TITLE></HEAD>\n";
  print "<BODY>\n";
     print "<H2>HTML als Perlprogramm</H2>\n";
     print "<HR>\n";
     print "<CENTER>Diese Seite wurde durch ein Perlprogramm generiert.</CENTER>\n"; 
     print "<HR>\n";
print "</BODY></HTML>\n";
 
Eine Eingabezeile in HTML mitPERL auswerten 
#! /usr/local/bin/perl
# e i n e  H T M l - E i n g a b e z e i l e in P E R L
# =====================================================
# Die Adresse dieses Programms festlegen
$thisaction="http://www.lehrer.uni-karlsruhe.de/~za186/cgi-bin/html1.cgi";
# Der HTML-Kopf
print "Content-Type: Text/html\n\n";
print "<HTML><HEAD><TITLE></TITLE></HEAD>\n";
print "<BODY>\n";
print "<CENTER>Eine Eingabezeile auswerten mit PERL</CENTER>\n";
# Das Eingabeformular festlegen
print "<FORM METHOD=GET ACTION=$thisaction>\n";
print "Bitte den Text: <INPUT TYPE=TEXT NAME=\"Textzeile\">\n";
print "<INPUT TYPE=SUBMIT VALUE=\"abschicken\">\n";
print "</FORM>\n";
# falls etwas abgeschickt wurde, auswerten
$eingabe=$ENV{"QUERY_STRING"};
if ( $eingabe ) {
  ($eingabevar,$eingabezeile)=split(/=/,$eingabe);
   $eingabezeile=~ tr/+/ /; # Leerzeichen umwandeln
    # Hexcodes-Sonderzeichen umwandeln
   $eingabezeile=~ s/%([0-9A-F]{2})/pack(C,hex($1))/ieg;
  print "Ihre Eingabezeile lautet: $eingabezeile\n";
} 
print "</HTML></BODY>\n";   
Ein Textfeld in HTML mit PERL auswerten: 
#! /usr/local/bin/perl
# e i n   H T M l - T E X T F E L D  in  P E R L
# =====================================
# Die Adresse dieses Programms festlegen
$thisaction="http://www.lehrer.uni-karlsruhe.de/~za186/cgi-bin/html2.cgi";
# Der HTML-Kopf
print "Content-Type: Text/html\n\n";
print "<HTML><HEAD><TITLE></TITLE></HEAD>\n";
print "<BODY>\n";
print "<CENTER>Eine Eingabezeile auswerten mit PERL</CENTER>\n";
# Das Eingabeformular festlegen
print "<FORM METHOD=POST ACTION=$thisaction>\n";
print "Bitte den Text: <TEXTAREA NAME=\"Textzeile\" COLS=40 ROWS=5>\n";
print "</TEXTAREA>\n";
print "<BR><INPUT TYPE=SUBMIT VALUE=\"abschicken\">\n";
print "</FORM>\n";
# falls etwas abgeschickt wurde, auswerten
read(STDIN,$eingabe,$ENV{"CONTENT_LENGTH"});
if ( $eingabe ) {
  ($eingabevar,$eingabetext)=split(/=/,$eingabe);
   $eingabetext=~ tr/+/ /; # Leerzeichen umwandeln
    # Hexcodes-Sonderzeichen umwandeln
   $eingabetext=~ s/%([0-9A-F]{2})/pack(C,hex($1))/ieg;
   print "Ihre Eingabezeile lautet: $eingabetext\n";
}
print "</HTML></BODY>\n";  
Radiobuttons in HTML mit PERL auswerten:
#! /usr/local/bin/perl
# R A D I O B U T T O N S  i n  P E R L
# ==============================
# Die Adresse dieses Programms festlegen
$thisaction="http://www.lehrer.uni-karlsruhe.de/~za186/cgi-bin/html3.cgi";
# Der HTML-Kopf
print "Content-Type: Text/html\n\n";
print "<HTML><HEAD><TITLE></TITLE></HEAD>\n";
print "<BODY>\n";
print "<CENTER>Eine Eingabezeile auswerten mit PERL</CENTER>\n";
# Die RADIOBUTTONS festlegen
print "<FORM METHOD=GET ACTION=$thisaction>\n";
print "Sind Sie:<BR>\n";
print "<INPUT TYPE=RADIO VALUE=\"ledig\" CHECKED NAME=\"RADIO\">ledig<BR>\n";
print "<INPUT TYPE=RADIO VALUE=\"verheiratet\" NAME=\"RADIO\">verheiratet<BR>\n
print "<BR><INPUT TYPE=SUBMIT VALUE=\"abschicken\">\n";
print "</FORM>\n";
# falls etwas abgeschickt wurde, auswerten
$eingabe=$ENV{"QUERY_STRING"};
if ( $eingabe ) {
  ($eingabevar,$eingabebtn)=split(/=/,$eingabe);
   $eingabebtn=~ tr/+/ /; # Leerzeichen umwandeln
    # Hexcodes-Sonderzeichen umwandeln
   $eingabebtn=~ s/%([0-9A-F]{2})/pack(C,hex($1))/ieg;
   print "Sie sind $eingabebtn !\n";
}
print "</HTML></BODY>\n"; 
Und nun eine Auswahl-Listbox: 
#! /usr/local/bin/perl
# e i n e  H T M l - E i n g a b e z e i l e in P E R L
# =====================================================
# Die Adresse dieses Programms festlegen
$thisaction="http://www.lehrer.uni-karlsruhe.de/~za186/cgi-bin/html4.cgi";
# Der HTML-Kopf
print "Content-Type: Text/html\n\n";
print "<HTML><HEAD><TITLE></TITLE></HEAD>\n";
print "<BODY>\n";
print "<CENTER>Eine Auswahlliste auswerten mit PERL</CENTER>\n";
# Die LISTBOX festlegen
print "<FORM METHOD=GET ACTION=$thisaction>\n";
print "Wählen Sie aus der Liste:<BR>\n";
print "<SELECT NAME=\"listbox\" SIZE=5>\n";
print "  <OPTION>ledig\n";
print "  <OPTION>verheiratet\n";
print "  <OPTION>geschieden\n";
print "  <OPTION>verwitwet\n";
print "  <OPTION>mit Lebensgefährte\n";
print "</SELECT>\n";
print "<INPUT TYPE=SUBMIT VALUE=\"auswählen\">\n";
print "</FORM>\n";
# falls etwas ausgewaehlt wurde, auswerten
$eingabe=$ENV{"QUERY_STRING"};
if ( $eingabe ) {
  ($eingabevar,$eingabebtn)=split(/=/,$eingabe);
   $eingabebtn=~ tr/+/ /; # Leerzeichen umwandeln
    # Hexcodes-Sonderzeichen umwandeln
   $eingabebtn=~ s/%([0-9A-F]{2})/pack(C,hex($1))/ieg;
   print "Sie sind $eingabebtn !\n";
}
print "</HTML></BODY>\n";
 

10.07.1997 Roland Bernert