Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Lebih Lanjut Tentang Session Timeout di PHPMaker
Mudahnya Menambahkan Beberapa Kondisi pada String Filter di PHPMaker
Memastikan Tanggal Awal Tidak Boleh Lebih Besar dari Tanggal Akhir dari PHPMaker

Lebih Lanjut Tentang Session Timeout di PHPMaker

Rab, 6 Januari 2016 oleh Masino Sinaga 7 Komentar

Sejak versi 12, PHPMaker menambahkan fitur baru yang dapat membuat Aplikasi Web yang dihasilkan olehnya logout otomatis apabila Pengguna tidak melakukan aktivitas selama waktu tertentu.

Pengertian dari “aktivitas” di sini adalah Pengguna tidak membuka atau berpindah ke halaman lain, dan dibatasi untuk setiap tab browser yang sudah/sedang dibuka.

Jadi, meskipun Pengguna membuka beberapa tab di suatu browser, maka setiap tab tadi memiliki waktu session masing-masing. Tab yang terbuka paling duluan tentu saja akan lebih cepat berakhir waktu session-nya.

Pengaturan mengenai waktu session tadi terdapat di bawah menu Tools -> Advanced Settings -> Project pada project PHPMaker Anda.

Ada tiga item pengaturan yang perlu kita ketahui supaya fitur logout otomatis ini dapat optimal digunakan, yaitu sebagai berikut:

  1. Session timeout period (minutes), yaitu nilai waktu dalam satuan menit jika Pengguna tidak memuat ulang halaman atau mengakses halaman lain pada jendela tab browser yang sama. Nilai standar (default) adalah 0, yang artinya fitur ini tidak aktif.
  2. Session keep alive interval (seconds), yaitu nilai waktu dalam satu detik yang dibutuhkan oleh Aplikasi Web untuk mengirim permintaan Ajax ke server untuk mempertahankan session tetap aktif. Nilai standar (default) adalah 0, yang artinya fitur ini tidak aktif.
  3. Session time out countdown period (seconds), yaitu nilai waktu dalam satuan detik sistem akan menampilkan hitungan mundur waktu pada kotak dialog, sebelum session benar-benar berakhir. Nilai standar (default) adalah 60, yang artinya jika kedua item pengaturan di atas tadi masing-masing bernilai lebih besar dari nol, maka pada 60 detik sebelum session berakhir, maka sistem akan menampilkan kotak dialog yang berisi hitungan mundur selama 60 detik.

Berdasarkan pengalaman Penulis, nilai item pengaturan pertama biasanya diset selama 3 menit, dan nilai item pengaturan yang kedua diset selama 180 detik (3 menit x 60 detik).

Itu artinya, jika selama 3 menit Pengguna tidak melakukan aktivitas apapun (mengakses halaman lain dalam tab yang sama), maka Aplikasi Web tadi akan logout otomatis.

Sedangkan nilai 180 detik pada item pengaturan kedua biasanya kita samakan dengan nilai 3 menit tadi. Mengapa? Supaya sistem tetap mengirimkan session dengan waktu yang sinkron dengan waktu timeout yang mengakibatkan logout otomatis tadi.

Jika kita misalnya ingin mengganti menjadi 5 menit, maka item pengaturan yang kedua tadi kita set menjadi 300 detik (5 menit x 60 detik).

Penting juga untuk diperhatikan, bahwa nilai item pengaturan yang ketiga di atas tadi harus dipastikan lebih kecil dari nilai item pengaturan yang kedua.

Jika nilai item pengaturan ketiga lebih besar dari nilai item pengaturan kedua, maka hitungan mundur dalam kotak dialog tidak akan pernah ditampilkan, atau hasilnya tidak sesuai dengan yang kita harapkan.

Nilai yang sangat disarankan untuk item pengaturan ketiga adalah 60 detik.

Meskipun nilai ketiga item pengaturan tadi sudah diberikan contohnya di atas, namun saya menyarankan agar Anda dapat mengeksplorasi dan bermain-main dengan ketiga item pengaturan tadi. Anda akan melihat efeknya setelah mencoba bereksperimen dengan nilai lainnya.

Kabar gembiranya adalah, fitur session time out ini semakin nyaman dirasakan oleh Pengguna jika Anda menggunakan Masino Extensions untuk PHPMaker. Mengapa? Karena begitu pertama kali Pengguna berhasil login, maka waktu total session Pengguna akan langsung ditampilkan di bagian Footer.

Dengan cara ini, maka Pengguna semakin yakin saat menggunakan Aplikasi Web yang kita hasilkan dengan PHPMaker dan Masino Extensions. Sama seperti jika kita sedang menunggu giliran jalan di lampu merah atau ketika kita sedang akan melewati persimpangan lampu merah yang memiliki counter hitungan mundur.

Nikmatnya menggunakan PHPMaker … 😉

Ditempatkan di bawah: PHPMaker Ditag dengan:PHPMaker 12, Session ID, user session

Masino Sinaga

Web Developer pengguna PHPMaker untuk membangun Aplikasi Web sejak tahun 2004. Sampai sekarang masih aktif dan rajin membagikan pengalamannya menggunakan PHPMaker melalui situs masinosinaga.com dan ilovephpmaker.com.

Mudahnya Menambahkan Beberapa Kondisi pada String Filter di PHPMaker
Memastikan Tanggal Awal Tidak Boleh Lebih Besar dari Tanggal Akhir dari PHPMaker

Komentar

  1. Nanda mengatakan

    Jum, 8 Januari 2016 pada 11:15 am

    Pak Masino, apa nama file hasil Generate yang mengatur tentang Session timeout period (minutes), Session keep alive interval (seconds), Session time out countdown period (seconds) ini, saya cari kok belum ketemu ya ?

    satu lagi Pak, saya punya dua Project (beda folder), ketika kedua-dua nya dijalankan dan salah satu Projeck tsb Logout Project yang lainnya kok ikut Logout juga ya (padahal belum di Logout) , apa PHP Maker memang seperti itu atau ada pengaturannya ?

    Balas
    • Masino Sinaga mengatakan

      Jum, 8 Januari 2016 pada 11:41 am

      Pengaturannya bisa dilakukan dari dalam file project PHPMaker. Jika ingin mengatur dari file yang sudah di-generate, lihat dalam file ewcfg12.php.

      Jika di localhost, memang seperti itu.

      Balas
      • Nanda mengatakan

        Jum, 8 Januari 2016 pada 2:04 pm

        terimakasih Pak, saya pingin nyoba nilai nya nanti bisa dirubah2 dari Database.
        untuk Logout :
        saya coba di jaringan , saya akses dari komputer Client kok sama ya Pak ?
        ketika yang satu logout, projek satunya juga ikut logout.

        Balas
        • Masino Sinaga mengatakan

          Sen, 11 Januari 2016 pada 4:05 pm

          Pastikan ProjectName dan ProjectID di file .pmp-nya berbeda di kedua aplikasi web tersebut.

          Balas
  2. Cak Sobri mengatakan

    Rab, 27 Januari 2016 pada 9:33 am

    Om, gimana caranya untuk login single window, misal kita punya beberapa aplikasi menggunakan PMP ketika kita login ke salah satu aplikasi maka kita gak usah login lg ketika ingin membuka aplikasi lainnya… karna saya menggunakan LDAP jadi saya rasa aplikasi saya bisa sinkronisasi loginnya agar untuk mempermudah user…

    Terimakasih om Masino Sinaga 🙂

    Balas
    • Cak Sobri mengatakan

      Rab, 27 Januari 2016 pada 11:01 am

      Saya menemukan ini di Advanced Settings,
      1. Allow login by URL
      2. Allow login by session variables

      Tapi belum bisa mengimplementasikannya..

      sementara kode yg saya coba begini (belum berhasil) :

      // User Validated event
      function User_Validated(&$rs) {
      // Example:
      //$_SESSION[‘UserEmail’] = $rs[‘Email’];

      // EW_PROJECT_NAME adalah nama project PHPMaker yang kedua
      $_SESSION[“sitekedua_Username”] = $rs[“username”]; // is username (nama field di Security Tab)
      $_SESSION[“sitekedua_Password”] = $rs[“password”]; // is an encrypted password (nama field di Security Tab)
      $_SESSION[“sitekedua_Encrypted”] = TRUE;
      }

      Balas
    • Masino Sinaga mengatakan

      Kam, 28 Januari 2016 pada 11:59 am

      Gunakan juga server event User_CustomValidate. Baca menu Help.

      Balas

Tinggalkan Balasan Batalkan balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

Pos-pos Terbaru

  • Begini Mudahnya Mengubah Lebar Modal Dialog di PHPMaker 2022
  • Item Menu Tetap Aktif Meskipun Sedang Menampilkan Halaman Tambah, Ubah, Tampilkan, Cari di PHPMaker 2022
  • Hati-Hati Memilih Versi PHP Sebelum Generate Code di PHPMaker 2022
  • Alasan AlwaysUseEnglishUSLocale Sebaiknya Aktif di Masino Extensions untuk PHPMaker 2022
  • MasinoInputMask18 Extension, Autoformat Angka dengan Fitur Lebih Kaya di PHPMaker 2022

Menu

  • Siapa Saya?
  • Web Development
  • PHPMaker
  • Umum
  • Syarat dan Ketentuan
  • Sitemap (Peta Situs)
  • Komentar

Komentar Terbaru

  • Masino Sinaga pada Project Stock Inventory untuk PHPMaker 2022 Sekarang Sudah Bisa Didownload
  • Stanislaus Ariyanto pada Project Stock Inventory untuk PHPMaker 2022 Sekarang Sudah Bisa Didownload
  • Masino Sinaga pada Mudahnya Mendapatkan Info Pengguna Setelah Login di Aplikasi Web dari PHPMaker
  • irwan pada Mudahnya Mendapatkan Info Pengguna Setelah Login di Aplikasi Web dari PHPMaker
  • Masino Sinaga pada Ini Dia Fitur-Fitur yang Terdapat di Masino Extensions untuk PHPMaker 2022

Situs Terkait

  1. I Love PHPMaker
  2. Situs Resmi PHPMaker
  3. Forum Diskusi PHPMaker
  4. PHPMaker di IlmuKomputer.com
  5. PHPMaker Learning

Baru di PHPMaker?

Baca ini terlebih dulu ...

  1. Ayo Menjadi Web Developer yang Cerdas!
  2. PHPMaker: PHP Code Generator + PHP Framework
  3. Pertanyaan-Pertanyaan yang Paling Sering Diajukan Seputar PHPMaker
  4. Tips buat Anda Pemula yang Baru Mengenal dan Menggunakan PHPMaker
  5. Bacalah Help, Bacalah Help, dan Bacalah Help di PHPMaker!

(c) Masino Sinaga 2009 - 2021 | WordPress | Catat masuk | Kembali ke atas