Hallo!
Ich hatte am Freitag eine Testaufgabe und bin mir nicht sicher ob meine Lösung gut ist oder ob es nicht besser zu proggen ist.
Die Aufgabenstellung: Erstelle ein Loginfenster und pürfe ob ein bestimmter Username vorhanden ist. Wenn ja, tausche den Login-Button mit einem Logout-Button aus. Außerdem speichere alle Aktionen in eine weitere Tabelle ab. Z.B. User hat sich erfolgreich angemeldet, User nicht vorhanden usw.
Ich hatte am Freitag eine Testaufgabe und bin mir nicht sicher ob meine Lösung gut ist oder ob es nicht besser zu proggen ist.
Die Aufgabenstellung: Erstelle ein Loginfenster und pürfe ob ein bestimmter Username vorhanden ist. Wenn ja, tausche den Login-Button mit einem Logout-Button aus. Außerdem speichere alle Aktionen in eine weitere Tabelle ab. Z.B. User hat sich erfolgreich angemeldet, User nicht vorhanden usw.
PHP-Code:
<?php
include_once("db_inc.php");
if($_POST['login']){
include_once("pruefen.php");
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head><title>Login</title
<link rel="stylesheet" type="text/css" href="basic.css">
</head>
<body>
<div id="formular">
<fieldset>
<legend>Login</legend>
<form method=POST action="<?php print htmlspecialchars($_SERVER['PHP_SELF']); ?>">
<input type="input" name="user" maxlenght="40" value="Username">
<input type="password" name="pass" maxlenght="20" value="Paswort"><br>
<?if ($para != 2) {?>
<input type="submit" value="login" name="login">
<?} else {?>
<input type="submit" value="logout" name="logout">
<?}?>
</form>
</fieldset>
</div>
<?if ($para != 2) {
echo "da ist was schief gegenagen!";
} else {
echo "Hallo";
}?>
</body>
</html>
PHP-Code:
<?php
class login {
public function pruefen($user, $pass) {
$res1 = mysql_query("SELECT user_id, username, password FROM user WHERE username = '$user'");
$erg1 = mysql_fetch_row($res1);
if($erg1){
$res2 = mysql_query("SELECT user_id, username, password FROM user WHERE username = '$user' AND password = '$pass'");
$erg2 = mysql_fetch_row($res2);
} else {
$this->schreiben_db($user, "Username nicht vorhanden", "0");
}
if($erg2){
$this->schreiben_db($user, "Login erfolgreich" , "2");
} else {
$this->schreiben_db($user, "Passwort falsch", "1");
}
}
public function schreiben_db($user, $text, $status) {
$write_db = mysql_query("INSERT INTO user_log(username, status) VALUES('$user', '$text')");
$this->ausgabe($status);
}
function ausgabe($status) {
global $para;
$para = $status;
}
}
$check_login = new login();
$check_login->pruefen($_POST['user'], $_POST['pass']);
?>
Kommentar