<html>
<head>
<title>Benutzerüberprü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>