[Next] [Up] [Previous] [Contents] [Index]
Next: Installation,eigener`` Programme Up: CGI Previous: CGI

Unser erstes CGI-Skript

#!/usr/bin/perl -w

use strict;                                    # Strikte Prüfung ein

  my @Passwords = ("delta","Indigo","fSD8rsG");# Passwortliste
  my $Input;                                   # Deklaration der Variable

  print "Content-type: text/html\n\n";         # HTTP-Header
  read(STDIN, $Input, $ENV{'CONTENT_LENGTH'}); # Standard-Eingabe auslesen

  unless($Input =~ /geheim/) {                 # Wenn 'geheim' nicht vorkommt
    print <<"    EOFHTML1";
      <HTML><HEAD><TITLE>Passwort</TITLE></HEAD>
      <BODY BGCOLOR="#FFFFFF"><H1>Passwort</H1>
      <FORM ACTION="/cgi-bin/passwd.cgi" METHOD="POST">
      <INPUT TYPE="password" NAME="geheim" MAXLENGTH=15 SIZE=15>
      <INPUT TYPE="submit" VALUE="Absenden">
      <INPUT TYPE="reset" VALUE="Delete">
      </FORM></BODY></HTML>
    EOFHTML1
    exit(0);                                   # Und Tschüss
  } else {                                     # wenn 'geheim' vorkommt
    my $Erfolg;
    print "<HTML><HEAD><TITLE>Passwort</TITLE></HEAD>\n";           
    print qq[<BODY BGCOLOR="#FFFFFF"><H1>Passwort</H1>\n];
    my ($name, $value) = split(/=/, $Input);   # Teile Input in Key und Value 
    for(@Passwords) {                          # Passwortliste abklappern
      if ($value eq $_) {                      # Wenn Wert gleich Passwort
        $Erfolg = "ja";
        last;                                  # for-Schleife abbrechen
      } else {                                 # Wenn Wert ungleich Passwort
        $Erfolg = "nein";
      }
    }
    if ($Erfolg eq "ja") {
      print "<B>Eingeloggt!</B>\n"; 
     # Hier kann z.B. ein Verweis zu einer geheimen URL folgen
     } else {
      print "<B>Sorry, Sie haben hier <BLINK>KEINEN</BLINK> Zutritt oder",
            " Ihr Passwort falsch eingegeben!</B>\n";
     }
    print "</BODY></HTML>\n";
    exit(0);
   }

[Next] [Up] [Previous] [Contents] [Index]
Next: Installation,eigener`` Programme Up: CGI Previous: CGI


Tue Dec 7 13:01:45 MET 1999