Cara Membuat Logout di PHP dengan Session

Logout adalah fitur wajib pada aplikasi web yang memiliki sistem login. Tujuannya adalah untuk:

  • Mengakhiri sesi pengguna yang aktif
  • Mencegah akses tidak sah setelah pengguna selesai menggunakan aplikasi
  • Melindungi data pribadi dan hak akses pengguna

Cara Kerja Logout di PHP

Logout di PHP umumnya dilakukan dengan:

  1. Memulai atau melanjutkan session
  2. Menghapus semua data session
  3. Mengarahkan pengguna kembali ke halaman login

Kode Logout Sederhana di PHP

Buat file bernama logout.php, lalu isi dengan kode berikut:

<?php
// Mulai session
session_start();

// Hapus semua data session
session_unset();

// Hancurkan session
session_destroy();

// Redirect ke halaman login
header("Location: login.php");
exit;

Penjelasan Kode:

Baris Penjelasan
session_start(); Untuk memastikan session aktif sebelum dimodifikasi
session_unset(); Menghapus semua variabel dalam session
session_destroy(); Menghapus seluruh session dari server
header("Location: login.php"); Mengarahkan user kembali ke halaman login
Baca Juga  Cara menampilkan avatar author (gambar profil) di wordpress

Contoh Tombol Logout di Halaman Dashboard

Di file dashboard.php, tambahkan link atau tombol logout:

<p><a href="logout.php">Logout</a></p>

Atau, jika ingin menggunakan tombol:

<form method="post" action="logout.php">
    <button type="submit">Logout</button>
</form>

Tips Keamanan Logout

  1. Selalu gunakan session_destroy() untuk menghapus sesi di server, bukan hanya menghapus cookie.
  2. Gunakan exit; setelah redirect, agar script tidak lanjut dieksekusi.
  3. Jika ingin lebih aman, setelah logout kamu bisa hapus juga cookie dengan:
    setcookie(session_name(), '', time() - 3600);
    

Kesimpulan

Logout di PHP sangat mudah dibuat hanya dengan beberapa baris kode. Namun, logout ini berperan penting dalam menjaga keamanan dan privasi pengguna pada aplikasi web.

Dengan membuat file logout.php seperti di atas, kamu telah menyelesaikan satu bagian penting dari sistem autentikasi.

Apa pendapatmu? Tulis di kolom komentar dengan sopan dan beretika. Jangan lupa bagikan agar semakin banyak yang tahu!

Leave a Reply

Your email address will not be published.

Spam check: