MezData-Logo Lösungen Button :WEBPUBLISH: Übungen zu Formularen

Passwortabfrage

Die Eingaben user und passwort des Formulars werden an anmelden.php mit POST geschickt.

Erstellen Sie den HTML-Quellcode für das Formular.

Quellcode [passwort.html]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
	<head>
		<meta http-equiv="content-type" content="text/html;charset=utf-8" />
		<title>Passwortabftage</title>
		<style type="text/css" media="screen"><!--
body { font-family: Helvetica, Geneva, Arial, SunSans-Regular, sans-serif; background-color: #ff9; }
--></style>
	</head>
 
	<body>
		<h2>Passwortabfrage</h2>
		<form action="anmelden.php" method="post">
			<table border="1" cellspacing="0" cellpadding="3">
				<tr>
					<th>Name</th>
					<td><input type="text" name="user" size="24" /></td>
					<td rowspan="2"><input type="submit" value="Anmelden" /></td>
				</tr>
				<tr>
					<th>Passwort</th>
					<td><input type="password" name="passwort" size="24" /></td>
				</tr>
			</table>
		</form>
	</body>
 
</html>

Auswertung der Eingaben. Folgende Zugangsdaten sind bereits vorgegeben:

namen[] = {"Anna","Bert","Kalleman"};
pswd[] = {"f1c4e","123gaga","babe"};

Erstellen Sie PHP-Code oder ein Struktogramm für ein Unterprogramm anmelden(user, passwort:Text):Bool, das bei gültiger Anmeldung true ausgibt.

PHP-Lösung

Quellcode [anmelden.php]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
	<head>
		<meta http-equiv="content-type" content="text/html;charset=utf-8" />
		<title>Anmeldung</title>
		<style type="text/css" media="screen"><!--
body { font-family: Helvetica, Geneva, Arial, SunSans-Regular, sans-serif; background-color: #8cff57; }
--></style>
	</head>
 
	<body>
		<h2>Anmeldung</h2>
		<p><?php
       $namen = array("Anna","Bert","Kalleman"); // Definition der Arrays
       $pswd = array("f1c4e","123gaga","babe");
 
       if ($_POST['user'] && $_POST['passwort']){ // Auswerten der CGI-Uebergagbe
         if (anmelden($_POST['user'], $_POST['passwort']))
           echo 'Anmeldung OK';
         else
           echo 'Anmeldung ist nicht OK!';
       }
       else
         echo 'Aufruf der Anmeldung ist fehlerhaft';
 
       function anmelden($user,$passwort){  // Die zu erstellende Funktion
         global $namen,$pswd;
         for ($i=0;$i<count($namen);$i++){
           if ($namen[$i]==$user && $pswd[$i]==$passwort)
             return true;
         }
         return false;
       }      
     ?></p>
	</body>
 
</html>

Struktogramm