Weitere Reviewänderungen
This commit is contained in:
+5
-28
@@ -1,32 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once "includes/LocalUserDAO.php";
|
include_once 'php/controller/login-controller.php';
|
||||||
|
|
||||||
$dao = new LocalUserDAO();
|
$error = $error ?? null;
|
||||||
$error = null;
|
|
||||||
|
|
||||||
/*
|
|
||||||
Verarbeitung des Login-Formulars
|
|
||||||
Funktion: Prüft Benutzerdaten und erstellt Session für eingeloggten Nutzer
|
|
||||||
*/
|
|
||||||
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
|
||||||
|
|
||||||
$email = $_POST["email"];
|
|
||||||
$password = $_POST["password"];
|
|
||||||
|
|
||||||
$user = $dao->findUser($email);
|
|
||||||
|
|
||||||
if ($user && password_verify($password, $user["password"])) {
|
|
||||||
|
|
||||||
$_SESSION["user"] = $user["username"];
|
|
||||||
$_SESSION["user_email"] = $user["email"];
|
|
||||||
|
|
||||||
header("Location: index.php");
|
|
||||||
exit();
|
|
||||||
|
|
||||||
} else {
|
|
||||||
$error = "Login fehlgeschlagen. Bitte überprüfe deine Eingaben.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
@@ -39,7 +14,9 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
|||||||
<h1>Bitte anmelden</h1>
|
<h1>Bitte anmelden</h1>
|
||||||
|
|
||||||
<?php if ($error): ?>
|
<?php if ($error): ?>
|
||||||
<p style="color:red;"><?php echo $error; ?></p>
|
<p style="color:red;">
|
||||||
|
<?php echo htmlspecialchars($error); ?>
|
||||||
|
</p>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<form method="post" action="index.php?pfad=login">
|
<form method="post" action="index.php?pfad=login">
|
||||||
|
|||||||
+6
-14
@@ -1,14 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once "includes/LocalUserDAO.php";
|
include_once 'php/controller/profile-controller.php';
|
||||||
|
|
||||||
$dao = new LocalUserDAO();
|
$user = $user ?? null;
|
||||||
|
|
||||||
if (!isset($_SESSION["user"])) {
|
|
||||||
header("Location: index.php?pfad=login");
|
|
||||||
exit();
|
|
||||||
}
|
|
||||||
|
|
||||||
$user = $dao->findUser($_SESSION["user_email"]);
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
@@ -30,7 +23,7 @@ $user = $dao->findUser($_SESSION["user_email"]);
|
|||||||
class="login-input"
|
class="login-input"
|
||||||
required
|
required
|
||||||
placeholder="Name"
|
placeholder="Name"
|
||||||
value="<?php echo htmlspecialchars($user["username"]); ?>">
|
value="<?php echo htmlspecialchars($user["username"] ?? ""); ?>">
|
||||||
|
|
||||||
<label class="input-label">Email-Adresse</label>
|
<label class="input-label">Email-Adresse</label>
|
||||||
<input type="email"
|
<input type="email"
|
||||||
@@ -38,15 +31,13 @@ $user = $dao->findUser($_SESSION["user_email"]);
|
|||||||
class="login-input"
|
class="login-input"
|
||||||
required
|
required
|
||||||
placeholder="mustermann@web.de"
|
placeholder="mustermann@web.de"
|
||||||
value="<?php echo htmlspecialchars($user["email"]); ?>">
|
value="<?php echo htmlspecialchars($user["email"] ?? ""); ?>">
|
||||||
|
|
||||||
<label class="input-label">Passwort</label>
|
<label class="input-label">Passwort</label>
|
||||||
<input type="password"
|
<input type="password"
|
||||||
name="password"
|
name="password"
|
||||||
class="login-input"
|
class="login-input"
|
||||||
required
|
placeholder="Neues Passwort eingeben">
|
||||||
placeholder="Passwort"
|
|
||||||
value="<?php echo htmlspecialchars($user["password"]); ?>">
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@@ -69,4 +60,5 @@ $user = $dao->findUser($_SESSION["user_email"]);
|
|||||||
</a>
|
</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
+5
-29
@@ -1,33 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once "includes/LocalUserDAO.php";
|
include_once 'php/controller/register-controller.php';
|
||||||
|
|
||||||
$dao = new LocalUserDAO();
|
$error = $error ?? null;
|
||||||
$error = null;
|
|
||||||
|
|
||||||
/*
|
|
||||||
Verarbeitung des Registrierungs-Formulars
|
|
||||||
Funktion: Erstellt neuen Benutzer und speichert ihn im DAO + Session
|
|
||||||
*/
|
|
||||||
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
|
||||||
|
|
||||||
$email = $_POST["email"];
|
|
||||||
$vorname = $_POST["vorname"];
|
|
||||||
$nachname = $_POST["nachname"];
|
|
||||||
$password = password_hash($_POST["password"], PASSWORD_DEFAULT);
|
|
||||||
|
|
||||||
if ($dao->findUser($email)) {
|
|
||||||
$error = "Diese E-Mail-Adresse ist bereits registriert.";
|
|
||||||
} else {
|
|
||||||
|
|
||||||
$dao->addUser($email, $vorname . " " . $nachname, $password);
|
|
||||||
|
|
||||||
$_SESSION["user"] = $vorname . " " . $nachname;
|
|
||||||
$_SESSION["user_email"] = $email;
|
|
||||||
|
|
||||||
header("Location: index.php");
|
|
||||||
exit();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
@@ -40,7 +14,9 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
|||||||
<h1>Jetzt Registrieren!</h1>
|
<h1>Jetzt Registrieren!</h1>
|
||||||
|
|
||||||
<?php if ($error): ?>
|
<?php if ($error): ?>
|
||||||
<p style="color:red;"><?php echo $error; ?></p>
|
<p style="color:red;">
|
||||||
|
<?php echo htmlspecialchars($error); ?>
|
||||||
|
</p>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<form method="post" action="index.php?pfad=register">
|
<form method="post" action="index.php?pfad=register">
|
||||||
|
|||||||
@@ -1,7 +1,59 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Interface für den Zugriff auf Benutzerdaten.
|
||||||
|
*
|
||||||
|
* Definiert die Methoden, die jede UserDAO-Implementierung
|
||||||
|
* bereitstellen muss.
|
||||||
|
*/
|
||||||
interface UserDAOInterface {
|
interface UserDAOInterface {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sucht einen Benutzer anhand seiner E-Mail-Adresse.
|
||||||
|
*
|
||||||
|
* Funktion:
|
||||||
|
* Liefert die gespeicherten Benutzerdaten zu einer E-Mail-Adresse.
|
||||||
|
*
|
||||||
|
* Eingabe:
|
||||||
|
* @param string $email E-Mail-Adresse des gesuchten Benutzers
|
||||||
|
*
|
||||||
|
* Ausgabe:
|
||||||
|
* @return array|null Benutzerdaten als Array oder null,
|
||||||
|
* falls kein Benutzer gefunden wurde
|
||||||
|
*/
|
||||||
public function findUser($email);
|
public function findUser($email);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fügt einen neuen Benutzer hinzu.
|
||||||
|
*
|
||||||
|
* Funktion:
|
||||||
|
* Erstellt einen neuen Benutzereintrag und speichert ihn
|
||||||
|
* in der jeweiligen Datenquelle.
|
||||||
|
*
|
||||||
|
* Eingabe:
|
||||||
|
* @param string $email E-Mail-Adresse des Benutzers
|
||||||
|
* @param string $username Benutzername des Benutzers
|
||||||
|
* @param string $password Passwort des Benutzers
|
||||||
|
*
|
||||||
|
* Ausgabe:
|
||||||
|
* Keine Rückgabe
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
public function addUser($email, $username, $password);
|
public function addUser($email, $username, $password);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Löscht einen Benutzer anhand seiner E-Mail-Adresse.
|
||||||
|
*
|
||||||
|
* Funktion:
|
||||||
|
* Entfernt einen vorhandenen Benutzer aus der Datenquelle.
|
||||||
|
*
|
||||||
|
* Eingabe:
|
||||||
|
* @param string $email E-Mail-Adresse des zu löschenden Benutzers
|
||||||
|
*
|
||||||
|
* Ausgabe:
|
||||||
|
* @return bool true, wenn der Benutzer gelöscht wurde,
|
||||||
|
* false, wenn kein passender Benutzer gefunden wurde
|
||||||
|
*/
|
||||||
public function deleteUser($email);
|
public function deleteUser($email);
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
require_once "includes/LocalUserDAO.php";
|
||||||
|
|
||||||
|
$dao = new LocalUserDAO();
|
||||||
|
$error = null;
|
||||||
|
|
||||||
|
/*
|
||||||
|
Verarbeitung des Login-Formulars
|
||||||
|
Funktion: Prüft Benutzerdaten und erstellt Session für eingeloggten Nutzer
|
||||||
|
*/
|
||||||
|
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
||||||
|
|
||||||
|
$email = $_POST["email"] ?? "";
|
||||||
|
$password = $_POST["password"] ?? "";
|
||||||
|
|
||||||
|
$user = $dao->findUser($email);
|
||||||
|
|
||||||
|
if ($user && password_verify($password, $user["password"])) {
|
||||||
|
|
||||||
|
$_SESSION["user"] = $user["username"];
|
||||||
|
$_SESSION["user_email"] = $user["email"];
|
||||||
|
|
||||||
|
header("Location: index.php");
|
||||||
|
exit();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$error = "Login fehlgeschlagen. Bitte überprüfe deine Eingaben.";
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
require_once "includes/LocalUserDAO.php";
|
||||||
|
|
||||||
|
$dao = new LocalUserDAO();
|
||||||
|
|
||||||
|
if (!isset($_SESSION["user"])) {
|
||||||
|
header("Location: index.php?pfad=login");
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
|
||||||
|
$user = $dao->findUser($_SESSION["user_email"] ?? "");
|
||||||
|
|
||||||
|
if (!$user) {
|
||||||
|
$_SESSION = [];
|
||||||
|
session_destroy();
|
||||||
|
|
||||||
|
header("Location: index.php?pfad=login");
|
||||||
|
exit();
|
||||||
|
}
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
require_once "includes/LocalUserDAO.php";
|
||||||
|
|
||||||
|
$dao = new LocalUserDAO();
|
||||||
|
$error = null;
|
||||||
|
|
||||||
|
/*
|
||||||
|
Verarbeitung des Registrierungs-Formulars
|
||||||
|
Funktion: Erstellt neuen Benutzer und speichert ihn im DAO + Session
|
||||||
|
*/
|
||||||
|
if ($_SERVER["REQUEST_METHOD"] === "POST") {
|
||||||
|
|
||||||
|
$email = $_POST["email"] ?? "";
|
||||||
|
$vorname = $_POST["vorname"] ?? "";
|
||||||
|
$nachname = $_POST["nachname"] ?? "";
|
||||||
|
$password = password_hash(
|
||||||
|
$_POST["password"] ?? "",
|
||||||
|
PASSWORD_DEFAULT
|
||||||
|
);
|
||||||
|
|
||||||
|
if ($dao->findUser($email)) {
|
||||||
|
|
||||||
|
$error = "Diese E-Mail-Adresse ist bereits registriert.";
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
$dao->addUser(
|
||||||
|
$email,
|
||||||
|
$vorname . " " . $nachname,
|
||||||
|
$password
|
||||||
|
);
|
||||||
|
|
||||||
|
$_SESSION["user"] = $vorname . " " . $nachname;
|
||||||
|
$_SESSION["user_email"] = $email;
|
||||||
|
|
||||||
|
header("Location: index.php");
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user