<html>
<head>
<title>Benutzer&uuml;berpr&uuml;fung mittels switch-Abfrage und Funktionskapselung</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">
<?
function check_input()
{
   // �berpr�fen, ob vom Aufrufer dieser Seite ein Element mit dem Namen uid vorhanden ist
   if (isset($_POST["uid"]))
   {
      // lokale Variable $myUid auf den Wert dese Elementes mit dem Namen uid setzen
      $myUid=$_POST["uid"];
   }
   else // Element uid ist nicht vorhanden 
   {
      // Fehlermeldung ausgeben
      echo("Programmfehler: uid nicht definiert<br>");
   
      // Funktionalit�t beenden
      return false;
   }

   // �berpr�fen, ob vom Aufrufer dieser Seite ein Element mit dem Namen pwd vorhanden ist
   if (isset($_POST['pwd']))
   {
      // lokale Variable $myPwd auf den Wert dese Elementes mit dem Namen pwd setzen
      $myPwd=$_POST['pwd'];
   }
   else  // Element pwd ist nicht vorhanden
   {
      // Fehlermeldung ausgeben
      echo("Programmfehler: pwd nicht definiert<br>");

      // Funktionalit�t beenden
      return false;
   }

   // �berpr�fen, ob ein Benutzername eingegeben wurde
   if ($myUid == "") 
   {
      // Fehlermeldung ausgeben
      echo("Benutzername fehlt<br>");

      // Funktionalit�t beenden
      return false;
   }

   // �berpr�fen, ob ein Passwort eingegeben wurde
   if ($myPwd == "")
   {
      // Fehlermeldung ausgeben
      echo("Passwort fehlt<br>");

      // Funktionalit�t beenden
      return false;
   }

   //in Anh�ngigkeit des Benutzernamens dessen Passwort auf
   // die lokale Variable $fixedPw speichern
   switch($myUid)
   {
      case "PCZ":
         $fixedPw="schule";
         break;
      case "pcz":
         $fixedPw="pcz123";
         break;
      default:
         // Fehlermeldung ausgeben
         echo("Unbekannter Benutzer<br>");

         // Funktionalit�t beenden
         return false;
      break;
   }

   // tats�chliche Passwort�berpr�fung
   // der Wert der Variablen $myPwd kommt von der Benutzereingabe
   // der Wert der Variablen $fixedPw ist durch den Programmcode festgelegt
   if ($myPwd != $fixedPw)
   {

      // Fehlermeldung ausgeben
      echo("Passwort falsch<br>");

      // Funktionalit�t beenden
      return false;
   }
   
   // alle Fehlerpr�fungen wurden erfolgreich �berstanden
   return true;
}

// Funktion check_input() aufrufen und ...
// den R�ckgabewert der Funktion auf die lokale Variable $erg speichern
$erg=check_input();

// wenn der Wert der Variablen $erg false ist
if (!$erg)
{
   // Funktionalit�t beenden
   return;
}

// Logische Konsequenz der letzten if-Abfrage: wenn der R�ckgabewert der Funktion check_input() true ist
echo("Sie sind erfolgreich eingeloggt.<br>");
?>
</body>
</html>