Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Hati-Hati Meredirect Pengguna Setelah Login di PHPMaker 2025
Solusi Buat Field Lookup Table yang Bermasalah di Server Hosting
Ini Alasan Mengapa Kalian Harus Selalu Pakai PHPMaker versi Terakhir

Hati-Hati Meredirect Pengguna Setelah Login di PHPMaker 2025

Jum, 25 Juli 2025 oleh Masino Sinaga Tinggalkan Komentar

Pada PHPMaker versi 2024, kita bisa menulis kode sederhana berikut di server event User_LoggedIn untuk me-redirect Pengguna nancy setelah berhasil login, ke halaman List table orders:

	if ($usr == "nancy") {
		$this->terminate("orderslist");
	}

Hal itu bisa terjadi karena pada versi 2024, kode yang kita tulis pada server event User_LoggedIn akan ditempatkan pada file hasil generate models/Login.php.

Tapi sayangnya, kode tersebut tidak dapat kita gunakan pada server event yang sama pada PHPMaker 2025. Penyebabnya, karena server event User_LoggedIn tersebut tidak akan ditempatkan lagi pada file models/Login.php lagi di PHPMaker 2025, tapi akan berada ke dalam file hasil generate: src/AuthenticationEventSubscriber.php.

Sebagai solusinya, maka kita harus menulis kode masing-masing pada server event User_CustomValidate yang terdapat di bawah Server Events -> Global -> All Pages, dan server event Page_Load yang terdapat di bawah Server Events -> Other -> Login.

Kode selengkapnya pada server event User_CustomValidate (cek hasilnya pada file yang di-generate oleh PHPMaker: src/AdvancedSecurity.php):

// User Custom Validate event
function User_CustomValidate(string &$userName): bool
{
    // Enter your custom code to validate user, return true if valid.
    if ($userName == "nancy") {
        FlashBag()->add("MyRedirectUrl", "orderslist");
    }

    return false;
}

Kode selengkapnya pada server event Page_Load (cek hasilnya pada file yang di-generate oleh PHPMaker: models/Login.php):

// Page Load event
function Page_Load(): void
{
    $url = FlashBag()->get("MyRedirectUrl")[0] ?? "";
    if ($url) {
        $this->terminate($url);
    }   
}

Penting untuk diingat, bahwa kode yang kita tulis di dalam server event User_CustomValidate di atas, tidak akan berfungsi jika kita pindahkan ke server event User_LoggedIn. Mengapa? Karena dalam hal ini kode pada server event Page_Load akan duluan dieksekusi daripada kode pada server event User_LoggedIn.

Jadi, mulai sekarang, biasakanlah untuk menulis kode pada server event User_CustomValidate jika kita ingin melakukan validasi secara kostum terhadap user yang akan login, dan setelah itu, gunakan object FlashBag untuk menentukan URL yang akan dituju, lalu cek dan redirect menggunakan method terminate pada server event Page_Load di halaman Login.

Nah, di sinilah salah satu keuntungan jika kita menggunakan PHPMaker versi 2025 dibandingkan versi-versi major terdahulu. Kita bisa bebas menggunakan object FlashBag tadi dari bagian manapun di server event yang tersedia di PHPMaker, asalkan syarat dan ketentuannya terpenuhi.

Dengan cara yang hampir sama dengan kode di server event User_CustomValidate tadi, maka kita dengan mudahnya dapat menampilkan pesan sukses pada server event tersebut. Cukup tambahkan kode berikut:

FlashBag()->add("success", "Welcome, nancy! You have successfully been redirected to Orders List page.");

sesudah baris kode yang ini:

FlashBag()->add("MyRedirectUrl", "orderslist");

Semakin keren aja nih, si PHPMaker! 😀

Ditempatkan di bawah: PHPMaker Ditag dengan:Belajar PHPMaker, PHPMaker 2025, PHPMaker Indonesia, Server Events, Tutorial PHPMaker

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, ilovephpmaker.com, dan phpmakerprojects.com.

Solusi Buat Field Lookup Table yang Bermasalah di Server Hosting
Ini Alasan Mengapa Kalian Harus Selalu Pakai PHPMaker versi Terakhir

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

  • Alasan 20 Harus Pakai Masino Extensions: Maximum Record per Page
  • Alasan 19 Harus Pakai Masino Extensions: Custom Breadcrumb Links
  • Alasan 18 Harus Pakai Masino Extensions: Improvement User Level Permissions
  • Alasan 17 Harus Pakai Masino Extensions: Dynamic Permission for Export Data
  • Alasan 16 Harus Pakai Masino Extensions: Confirm Before Save

Menu

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

Komentar Terbaru

  • Demo Masino Extensions for PHPMaker 2026 – Masino Sinaga pada Fitur-Fitur Masino Extensions untuk PHPMaker 2024
  • Masino Sinaga pada Kode Javascript yang Berubah di PHPMaker 2026 dari PHPMaker 2025
  • Angg* pada Kode Javascript yang Berubah di PHPMaker 2026 dari PHPMaker 2025
  • Masino Sinaga pada Cara Menampilkan Tombol Close di Footer Modal buat Custom File yang SkipHeaderFooter-nya Bernilai True
  • Masino Sinaga pada Cara Menampilkan Tombol Close di Footer Modal buat Custom File yang SkipHeaderFooter-nya Bernilai True

Situs Terkait

  1. I Love PHPMaker
  2. Situs Resmi PHPMaker
  3. Forum Diskusi PHPMaker
  4. PHPMaker di IlmuKomputer.com
  5. PHPMaker Projects
  6. 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 - 2026 | WordPress | Catat masuk | Kembali ke atas