Mengenal Session dan Cara Menggunakannya

Share:
Salah satu contoh penggunaan session adalah saat kita melakuan proses login. Jika kita berhasil login ke dalam sebuah situs maka session akan otomatis dibuat. Session yang berhasil dibuat akan digunakan untuk mengautentifikasi halaman-halaman lainnya, sehingga kita tidak perlu login lagi di setiap halaman lainnya. Data session akan terus disimpan hingga tiba waktunya kita melakukan log0ut atau menutup halaman website tersebut.

Penjelasan di atas mungkin agar susah dipahami, tapi intinya session digunakan untuk menyimpan data sementara di dalam server.

Session memiliki fungsi yang sama seperti cookies, bedanya cookies di simpan di dalam browser sedangkan session disimpan di dalam server. Karena disimpan di dalam server sehingga session memiliki beberapa kelebihan
  • lebih aman
  • session dapat menyimpan lebih banyak informasi dibandingkan dengan cookies
  • session tidak tergantung pada browser, sehingga jika browser tidak mengaktifkan fungsi cookies fungsi session akan tetap dibuat dan dijalankan
Satu hal lagi yang penting untuk dipaphami, bahwa session tidak disimpan di dalam database. Data session akan hilang saat penggunanya keluar dari website tersebut.

Cara Membuat Session
Pembuatan session baru umumnya diletakkan pada baris paling pertama  pada sebuah halaman. Pada saat session dibuat, ID acak akan dibuat oleh php bernama php-sessid dengan nilai acak. Berikut contoh syntax session

<?php

   session_start();

?>

Contoh Penggunaan Session

cara menggunakan session cukup mudah, saya akan mencontohkan cara menggunakan session sederhana tidak perlu koneksi ke database dulu. Pada latihan ini kita akan membuat 3 file baru yaitu :

1. form_login.html


<html>
    <body>
        <p>Masukan username dan password anda</p>
        <br>
        <form method="post" action="proses_login.php">
            Username<input type="text" name="username">
            <br>
            password<input type="text" name="password">
            <br>
            <input type="submit" value="submit">
        </form>
    </body>
</html>

penjelasan : form_login.html adalah halaman login yang menampilkan 2 form inputan username dan passwrod. Username dan password yang kita masukkan nanti akan diperiksa di proses_login.php, apakah cocok atau tidak, jika cocok maka akan masuk ke halaman__user.php jika tidak maka akan dikembalikan ke halaman form_login.php


4. Proses_login.php


<?php
    session_start();

    $username = $_POST['username'];
    $password = $_POST['password'];

    if($username == "admin" && $password == "admin"){
        $_SESSION['username'] = $username;
        header("location: halaman_user.php");
    }else{
        header("location: form_login.html");
    }

?>

penjelasan : kita membuat file yang berfungsi untuk mengecek apakah username nya admin dan passwordnya admin juga. Jika keduanya sama maka akan dilanjutkan ke halaman_user jika tidak cocok maka akan dikembalikan ke halaman sebelumnya yaitu form_login

3. halaman_user.php

<?php

    session_start();
    if($_SESSION){
        echo "hai ".$_SESSION['username'];
    }else{
        header("location: form_login.html");
    }

?>

penjelasan : jika username dan password kita benar saat di cek di proses_login maka kita akan dibawa ke halaman_user. Di halaman user hanya akan menampilkan hai admin. "Admin" adalah nama session yang kita buat sebagai pembuktian bahwa session berhasil dibuat. Tapi jika session belum dibuat maka kita akan dikembalikan lagi ke halaman form_login.

Jika anda belum yakin, coba buktikan dengan cara tutup browser anda, lalu coba akes langusng halaman_user.php. Pasti anda akan diarahkan ke halaman form_login.

Kira-kira fungsinya sama dengan halaman profil facebook anda. Jika ternyata anda belum login maka anda akan diarahkan ke halaman login. Anda tidak dapat melihat halaman profile, sampai anda berhasil login. Ok, itu saja tutorial kali ini mudah-mudahan bermanfaat bagi kita semua

No comments