Home > PHP, Tips, Tutorial > Function Time Out

Function Time Out


Function Time Out ini bertujuan untuk meng-logout secara otomatis user yang sedang login namun status dia idle untuk beberapa waktu yang lama tanpa ada aktivitas sama sekali. Tujuannya untuk melindungi data yang ada didalamnya jika ternyata user meninggalkan aplikasinya untuk waktu yang cukup lama tapi lupa meng-logout account dia dari program tersebut. Ini contoh sederhana bisa anda modif lagi sesuai keinginan.

/* timeout.php */
<?php
session_start();
function login_validate() {
$timeout = 1;ย  /* deklarasi waktu yang kita inginkan (detik) */
$_SESSION[“expires_by”] = time() + $timeout;
}

function login_check() {
$exp_time = $_SESSION[“expires_by”];
if (time() < $exp_time) {
login_validate();
return true;
} else {
unset($_SESSION[“expires_by”]);
return false;
}
}
?>

/* cek.php */
<?php
include ‘timeout.php’;
login_validate();
header(‘Location:main.php’);
?>

/* main.php*/
<?php
include ‘timeout.php’;
if (!login_check()){
echo ‘Sesi sudah habis !! <a href=index.php>Kembali</a’;
exit(0);
}else{
echo ‘Sesi Ok Dalam Hitungan 1 Detik Session akan Hilang.
<br> Silahkan Refresh Halaman ini’;
}
?>

/* index.php */
<title>Session Login</title>
<form name=’cekSesi’ method=’GET’ action=’cek.php’>
<input type=’submit’ value=’Login’>
</form>

Alur Program :
Pertama file index.php berisikan sebuah tombol submit sederhana yang akan dikirimkan ke file cek.php. File cek.php berisikan pemberian nilai $_SESSION[“expires_by”] yang kemudian didirect ke file main.php. File main.php melakukan pengecekan sesi, kita memberi nilai time out adalah 1 (satu) detik, sehingga ketika kita merefresh halaman main.php terbaca sessionnya sudah expired dan akan muncul pesan ‘Sesi sudah habis’ / bisa juga kita direct ke halaman index / form login.

DEMO PROGRAM | SOURCE CODE

Semoga Bermanfaat

Categories: PHP, Tips, Tutorial Tags: , ,
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: