Menambahkan Fitur Logout Menggunakan Session Laravel - Perwira Learning Center

Posted by Jr on April 29, 2026 with No comments

 


Latar Belakang

Dalam sistem monitoring berbasis web, fitur autentikasi tidak hanya berhenti pada login, tetapi juga membutuhkan mekanisme logout. Logout berfungsi untuk mengakhiri sesi pengguna sehingga akses ke sistem menjadi lebih aman. Laravel menyediakan pengelolaan session yang memudahkan kita dalam menyimpan dan menghapus status login user.

Alat yang Digunakan

Beberapa alat yang digunakan:

  • PHP

  • Laravel Framework

  • MySQL / MariaDB

  • Blade Template Engine

  • Web Server (Apache/Nginx)

Konsep Session Login

Session adalah cara untuk menyimpan data sementara di server selama pengguna masih aktif menggunakan aplikasi. Pada sistem login sederhana, kita bisa menyimpan informasi seperti user_id atau status login ke dalam session.

Contoh saat login berhasil:

session([
    'user_id' => $user->id,
    'is_login' => true
]);

Dengan session ini, kita bisa mengecek apakah user sudah login atau belum di halaman tertentu.

Implementasi Logout

Logout dilakukan dengan cara menghapus session yang telah disimpan sebelumnya.

Membuat Route Logout

Tambahkan route berikut pada routes/web.php:


Menambahkan Method Logout

Tambahkan method berikut pada AuthController:


Contoh Penggunaan di View

Tambahkan tombol logout pada halaman dashboard:

<a href="/logout">Logout</a>

Penjelasan Kode

  • session([...]) digunakan untuk menyimpan data login

  • session()->flush() digunakan untuk menghapus seluruh data session

  • Setelah logout, user diarahkan kembali ke halaman login

Alur Sistem

  1. User login → session disimpan

  2. User mengakses halaman dashboard

  3. User klik tombol logout

  4. Session dihapus

  5. User kembali ke halaman login

Kelebihan Pendekatan Ini

  • Mudah diimplementasikan

  • Tidak membutuhkan konfigurasi kompleks

  • Cocok untuk sistem sederhana atau simulasi

  • Terintegrasi dengan fitur login sebelumnya

Catatan Penting

  • Untuk keamanan lebih baik, gunakan method POST untuk logout

  • Bisa juga menggunakan session()->forget('user_id') jika ingin menghapus sebagian session saja

  • Pertimbangkan menggunakan sistem bawaan Laravel (Auth) untuk aplikasi production

Kesimpulan

Fitur logout menggunakan session di Laravel sangat penting untuk menjaga keamanan aplikasi. Dengan menghapus session saat logout, sistem dapat memastikan bahwa user tidak lagi memiliki akses ke halaman yang dilindungi.

Daftar Pustaka

Laravel Documentation. (2025). "Session". Diakses dari https://laravel.com/docs/session
Laravel Documentation. (2025). "Routing". Diakses dari https://laravel.com/docs/routing
W3Schools. (2025). "PHP Sessions". Diakses dari https://www.w3schools.com/php/php_sessions.asp