add login system (in Bearbeitung)

This commit is contained in:
Illia Hromovoi 2025-06-18 11:17:02 +02:00
parent 47e6d11fad
commit f59491a327
6 changed files with 33 additions and 5 deletions

View File

@ -152,4 +152,8 @@ form select {
.hover:hover{ .hover:hover{
opacity: .75; opacity: .75;
text-decoration: none; text-decoration: none;
}
/*TODO Muss in die form.css übernommen werden*/
main a{
color: var(--brand-white);
} }

View File

@ -15,7 +15,7 @@ class UserController{
$this->view = $view; $this->view = $view;
} }
public function showUserForm(){ public function showUserRegisterForm(){
} }
@ -34,6 +34,22 @@ class UserController{
} }
public function login(){ public function login(){
$user = $this->db->getUserByEmail($_POST["email"]);
if(!$user){
echo "Benutzer nicht gefunden";
}
$hash = hash('sha256', $_POST["password"] . $user["salt"]);
if($hash == $user["passwort"]){
$_SESSION["user_id"] = $user["id"];
$_SESSION["user_role"] = $user["role"];
echo "Login ergolgreich";
}else{
echo "Falsches Passwort";
}
} }
} }

View File

@ -43,4 +43,12 @@ class UserModel extends Database
return true; return true;
} }
public function getUserByEmail($email){
$pdo = $this->linkDB();
$sql = "SELECT * FROM user WHERE email = :email";
$sth = $pdo->prepare($sql);
$sth->execute([":email" => $email]);
return $sth->fetch();
}
} }

View File

@ -13,8 +13,8 @@
<input type="password" name="password" id="reg_password" required> <input type="password" name="password" id="reg_password" required>
<input type="hidden" name="controller" value="user"> <input type="hidden" name="controller" value="user">
<input type="hidden" name="do" value="register"> <input type="hidden" name="do" value="login">
<button type="submit" style="display: block">Login</button> <button type="submit" class="btn" style="display: block">Login</button>
</form> </form>

View File

@ -20,7 +20,7 @@
<h3 class="logo">bib<span>course</span></h3> <h3 class="logo">bib<span>course</span></h3>
<div id="metanavi"> <div id="metanavi">
<a class="btn btn-user" href="?controller=Admin&do=showForm"><span class="material-icons">person</span></a> <a class="btn btn-user" href="?controller=Admin&do=showForm"><span class="material-icons">person</span></a>
<a class="btn btn-register" href="?controller=User&do=showUserForm">Registration</a> <a class="btn btn-register" href="?controller=User&do=showUserRegisterForm">Registration</a>
</div> </div>
</div> </div>
<nav> <nav>