Bini's Unterrichtsmaterial
Quellcode von login.php
<?php // login.php bi 2012.02
// Session wird gestartet!
// Dies muss erfolgen bevor irgend ein anderer Code kommt - Headerinformation
session_start();
// ------------------------------------ Wenn Logout gedrückt wurde -> Session löschen
if (isset($_POST['logout'])){
session_destroy();
}
$ps=$_SERVER['PHP_SELF'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<link href="sessions.css" rel="stylesheet" type="text/css" />
<title>Bini's Unterrichtsmaterial - PHP Sessions</title>
</head>
<body>
<h1>Bini's Unterrichtsmaterial - PHP Sessions</h1>
<h3>Session Login</h3>
<h4>Erlaubte Benutzerkonten:</h4>
<table>
<th>Name</th><th>Passwort</th>
<tr><td>TestUser</td><td>1234</td></tr>
<tr><td>Anton</td><td>austirol</td></tr>
</table>
<form action="<?php $ps ?>" method="post">
<table>
<tr><td>Name:</td><td><input type="text" name="name"></td></tr>
<tr><td>Passwort:</td><td><input type="password" name="passwort"></td></tr>
<tr><td> </td><td><input type="submit" name="einloggen" value="Einloggen"></td></tr>
</table>
</form>
<p>
<a href="seite1.php">Link in den internen Bereich, ohne sich einzuloggen.</a><br />
(Das entspricht dem Aufrufen der direkten URL im<br />
Browser, was ja verhindert werden soll)
</p>
<?php
if (isset($_POST['einloggen'])){
$name=$_POST['name']; // Daten aus dem Formular vom Server holen
$passwort=$_POST['passwort'];
if (!($name=='TestUser' and $passwort=='1234') and !($name=='Anton' and $passwort=='austirol')) {
echo "<p class='fehler'>Anmeldung nur mit den festgelegten Benutzerkonten möglich!</p>";
}
else { // Daten in Session speichern
$_SESSION['sname']=$name;
$_SESSION['spasswort']=$passwort;
$_SESSION['sseite']=basename($ps);
// ------------- Weiterleitungs-Skript -----------------
echo "<script type='text/javascript'>";
echo "function redirect_user() {";
echo "window.location.replace('seite1.php')";
echo "}";
echo "Timer = setTimeout('redirect_user()' , 0)";
echo "</script>";
// -----------------------------------------------------
}
}
?>
</body>
</html>