Titan Guard
Built-in, secure authentication system.
Login
auth()->login($user)
Starts user session
Logout
auth()->logout()
Ends active session
Check
auth()->check()
Checks if session is active
User
auth()->user()
Returns active user object
AuthController
app/Controllers/AuthController.php
public function login(): void { $email = $this->request()->input('email'); $password = $this->request()->input('password'); $user = User::where('email', $email)->first(); if ($user && password_verify($password, $user->password)) { auth()->login($user); redirect('/dashboard'); } $this->view('auth/login', ['error' => 'Invalid credentials']); } public function logout(): void { auth()->logout(); redirect('/'); } public function register(): void { $data = $this->request()->only(['name', 'email', 'password']); $data['password'] = password_hash($data['password'], PASSWORD_BCRYPT); auth()->login(User::create($data)); redirect('/dashboard'); }
Security Note: Block web access to
sessions/ via .htaccess.