Profildaten bearbeiten
This commit is contained in:
@@ -9,8 +9,52 @@ if (!isset($_SESSION["user"])) {
|
||||
exit();
|
||||
}
|
||||
|
||||
$dao = new LocalUserDAO();
|
||||
$error = null;
|
||||
|
||||
try {
|
||||
$dao = new LocalUserDAO();
|
||||
$user = $dao->findUser($_SESSION["user_email"] ?? "");
|
||||
|
||||
if (!$user) {
|
||||
$_SESSION = [];
|
||||
session_destroy();
|
||||
|
||||
header("Location: index.php?pfad=login");
|
||||
exit();
|
||||
}
|
||||
|
||||
if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["saveProfile"])) {
|
||||
$oldEmail = $_SESSION["user_email"];
|
||||
$newEmail = $_POST["email"] ?? "";
|
||||
$vorname = $_POST["vorname"] ?? "";
|
||||
$nachname = $_POST["nachname"] ?? "";
|
||||
$password = $_POST["password"] ?? "";
|
||||
|
||||
$existingUser = $dao->findUser($newEmail);
|
||||
|
||||
if ($existingUser && $newEmail !== $oldEmail) {
|
||||
$error = "Diese E-Mail-Adresse wird bereits verwendet.";
|
||||
} else {
|
||||
$updated = $dao->updateUser(
|
||||
$oldEmail,
|
||||
$newEmail,
|
||||
$vorname,
|
||||
$nachname,
|
||||
$password
|
||||
);
|
||||
|
||||
if ($updated) {
|
||||
$_SESSION["user"] = $vorname . " " . $nachname;
|
||||
$_SESSION["user_email"] = $newEmail;
|
||||
|
||||
header("Location: index.php?pfad=profile");
|
||||
exit();
|
||||
} else {
|
||||
$error = "Die Daten konnten nicht gespeichert werden.";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$user = $dao->findUser($_SESSION["user_email"] ?? "");
|
||||
|
||||
$articleManager = ArticleManager::getInstance();
|
||||
@@ -23,12 +67,4 @@ try {
|
||||
} catch (Exception $e) {
|
||||
$_SESSION["message"] = "internal_error";
|
||||
exit();
|
||||
}
|
||||
|
||||
if (!$user) {
|
||||
$_SESSION = [];
|
||||
session_destroy();
|
||||
|
||||
header("Location: index.php?pfad=login");
|
||||
exit();
|
||||
}
|
||||
Reference in New Issue
Block a user