Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Mudahnya Meredirect ke Halaman Default di Aplikasi Web dari PHPMaker
Menyisipkan Kode Saat Pengguna Logout di Aplikasi Web dari PHPMaker
Ketika Pengguna Gagal Login ke Aplikasi Web dari PHPMaker

Mudahnya Meredirect ke Halaman Default di Aplikasi Web dari PHPMaker

Kam, 3 Juli 2014 oleh Masino Sinaga 18 Komentar

Tidak bisa dihindari ketika Pengguna mengakses pertama sekali sebuah Aplikasi Web, maka mereka akan langsung diarahkan ke halaman default, atau halaman utama, atau halaman depan, atau istilah yang lebih kerennya adalah halaman index. Halaman default ini akan pertama kali dilihat Pengguna, baik yang belum login, maupun yang sudah berhasil login.

Halaman default biasanya ditampilkan ke Pengguna setelah mengunjungi alamat URL utama dari sebuah Aplikasi Web. Selain itu, halaman default tadi bisa juga ditampilkan setelah Pengguna berhasil login ke Aplikasi Web. Tentu saja seorang Web Developer harus menentukan halaman default mana yang dapat diakses pertama kali oleh Pengguna yang belum login, dan halaman default mana yang bisa dilihat Pengguna setelah berhasil login.

PHPMaker sudah menyediakan sebuah server event untuk menangani kondisi tersebut. Nama server event itu adalah Page_Redirecting yang lokasinya berada di bawah Server Events -> Other -> Default Page dari dalam project PHPMaker Anda. Seperti namanya, server event ini akan dipanggil ketika sistem mengarahkan Pengguna ke halaman default atau halaman utama.

Supaya semakin jelas, mari simak contoh berikut. Katakanlah di Aplikasi Web yang Anda bangun akan diterapkan business-logic sebagai berikut: Untuk Pengguna yang belum login, maka halaman default yang bisa diakses adalah home_guest.php, sedangkan untuk Pengguna yang sudah login, maka halaman default dibedakan lagi menjadi dua, yaitu untuk Pengguna yang memiliki username jojon akan diarahkan ke halaman home_jojon.php, sedangkan untuk Pengguna yang sudah berhasil login lainnya akan diarahkan ke halaman home_users.php.

Kode selengkapnya yang menggambarkan business-logic tadi di server event Page_Redirecting pada project PHPMaker Anda adalah sebagai berikut:

// Page Redirecting event
function Page_Redirecting(&$url) {
    // Example:
    //$url = "your URL";
    if (!IsLoggedIn()) { // jika pengguna belum login
        $url = "home_guest.php";
    } else { // jika pengguna sudah berhasil login
        if (CurrentUserName() == "jojon") { // jika username pengguna = jojon
            $url = "home_jojon.php";
        } else { // jika pengguna bukan jojon
            $url = "home_users.php";
        }
    }
}   

Untuk memeriksa apakah Pengguna sudah login atau belum, maka kita cukup menggunakan global function yang sudah disediakan oleh PHPMaker bernama IsLoggedIn(). Sedangkan untuk memeriksa username Pengguna yang sudah login, kita menggunakan global function bernama CurrentUserName().

Hampir sebagian besar Aplikasi Web mengarahkan Pengguna yang belum login langsung ke halaman Login ketika mereka pertama kali mengakses Aplikasi Web tersebut. Nah, untuk menerapkan business-logic yang seperti itu, maka contoh kode di atas tadi cukup diubah menjadi seperti di bawah ini:

// Page Redirecting event
function Page_Redirecting(&$url) {
    // Example:
    //$url = "your URL";
    if (!IsLoggedIn()) { // jika pengguna belum login
        $url = "login.php"; // arahkan langsung ke halaman Login
    } else { // jika pengguna sudah berhasil login
        if (CurrentUserName() == "jojon") { // jika username = jojon
            $url = "home_jojon.php";
        } else { // jika pengguna bukan jojon
            $url = "home_users.php";
        }
    }
}   

Kalau Anda perhatikan dari kedua contoh kode tadi, maka Anda sebagai Web Developer dapat dengan mudahnya menentukan halaman default mana saja yang dapat diakses oleh Pengguna; baik yang belum login, maupun yang sudah berhasil login; hanya dengan menambahkan sedikit kode saja di server event Page_Redirecting tersebut.

See? Betapa mudahnya PHPMaker dapat membantu Web Developer dalam menerapkan business-logic mengarahkan Pengguna ke halaman default pada Aplikasi Web yang dihasilkan oleh PHPMaker, bukan?

Ditempatkan di bawah: PHPMaker Ditag dengan:CurrentUserName, default, index, IsLoggedIn, Page_Redirecting, 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 dan ilovephpmaker.com.

Menyisipkan Kode Saat Pengguna Logout di Aplikasi Web dari PHPMaker
Ketika Pengguna Gagal Login ke Aplikasi Web dari PHPMaker

Komentar

  1. ricky mengatakan

    Sel, 27 Januari 2015 pada 7:42 pm

    Permisi, saya mau menanyakan mengenai sintaks:

    // Page Redirecting event
    function Page_Redirecting(&$url) {
        // Example:
        //$url = "your URL";
        if(!IsLoggedIn()){ //jika pengguna belum login
        $url = "view_pi_jadwal_ujianlist.php"; //arahkan langsung ke halaman jadwal
        } else { //jika pengguna sudah berhasil login
            if(CurrentUserName() = "koordinator") { //jika pengguna koordinator
                $url = "pi_mahasiswalist.php";
              } else { //jika pengguna bukan koordinator
                $url = "pi_praktiklist.php";
              }
        }
    }   
    

    Ketika saya ketik:
    http://localhost/projectPI/scripts/

    Mengapa muncul error sebagai berikut ini
    Error:
    ( ! ) Fatal error: Can’t use function return value in write context in C:\wamp\www\projectPI\scripts\index.php on line 247

    Mohon bimbingan dan arahan dari Bapak… Mohon maaf saya banyak tanya… Terima kasih banyak…

    Balas
    • Masino Sinaga mengatakan

      Rab, 28 Januari 2015 pada 8:24 am

      Karena sintaks yang ini salah:

      if(CurrentUserName() = "koordinator") { //jika pengguna koordinator
      

      seharusnya:

      if (CurrentUserName() == "koordinator") { //jika pengguna koordinator
      
      Balas
      • ricky mengatakan

        Rab, 28 Januari 2015 pada 8:58 am

        Wah iya maaf Pak saya kurang teliti… Oh iya Pak, setelah saya perbaiki ternyata tidak masuk ke $url = “pi_mahasiswalist.php”; tetapi masuk ke $url = “pi_praktiklist.php”;

        Mengapa seperti itu ya Pak? Terima kasih banyak Pak…

        Balas
        • Masino Sinaga mengatakan

          Rab, 28 Januari 2015 pada 9:04 am

          Kalau masuk ke “pi_praktiklist.php”, itu artinya username yang sedang login tidak sama dengan “koordinator”.

          Balas
        • ricky mengatakan

          Rab, 28 Januari 2015 pada 9:05 am

          Owh maaf Pak… “koodinator” tersebut merupakan Administrator Login (Hard-coded), maka fungsi CurrentUserName tidak dapat digunakan ya Pak? lalu bagaimana membedakan antara login Admin dengan user biasa ya Pak? terima kasih banyak Pak…

          Balas
          • Masino Sinaga mengatakan

            Rab, 28 Januari 2015 pada 9:15 am

            Gunakan fungsi global IsAdmin(), contoh:

            if (IsAdmin()) {
            // jika admin
            } else {
            // jika bukan admin
            }
            
            Balas
            • ricky mengatakan

              Rab, 28 Januari 2015 pada 9:27 am

              Maaf Pak, sudah saya coba seperti berikut ini:

              // Page Redirecting event
              function Page_Redirecting(&$url) {
                  // Example:
                  //$url = "your URL"; 
                  if(!IsLoggedIn()){ //jika pengguna belum login
                  $url = "view_pi_jadwal_ujianlist.php"; //arahkan langsung ke halaman jadwal
                  } else { //jika pengguna sudah berhasil login
                          if(IsAdmin()) { //jika pengguna koordinator
                          $url = "pi_mahasiswalist.php";                           
                          } else { //jika pengguna bukan koordinator                    
                          $url = "pi_praktiklist.php";              
                        }          
                  }     
              }   
              

              Namun kok hasilnya masih ada error :
              ( ! ) Fatal error: Call to undefined function IsAdmin() in C:\wamp\www\projectPI\scripts\index.php on line 247
              Call Stack
              # Time Memory Function Location
              1 0.0010 183624 {main}( ) ..\index.php:0
              2 0.0587 2681712 cdefault->Page_Main( ) ..\index.php:275
              3 0.0587 2681848 cdefault->Page_Terminate( ) ..\index.php:192
              4 0.0587 2681928 cdefault->Page_Redirecting( ) ..\index.php:171

              Mengapa ya Pak? Kok undefined fungsi IsAdmin ya Pak? Terima kasih banyak…

              Balas
              • Masino Sinaga mengatakan

                Rab, 28 Januari 2015 pada 10:11 am

                Itu artinya, function tersebut belum di-generate oleh PHPMaker.

                Solusinya, pastikan Anda sudah menggunakan/mengaktifkan Advanced Security dari menu Security di PHPMaker, lalu generate ulang semua file script dari PHPMaker seperti biasa.

                Untuk info lebih lanjut, baca topik Security Settings dari menu Help PHPMaker.

                Balas
                • ricky mengatakan

                  Rab, 28 Januari 2015 pada 10:23 am

                  Saya sudah menggunakan yang koordinator sebagai administrator (hard coded) dan user lain saya ambil dari tabel dosen dengan login name fieldnya nip dan password fieldnya no telp. Setting mana yang harus dilakukan agar fungsi IsAdmin() dapat digenerate oleh PHPMaker? Terima kasih banyak

                • Masino Sinaga mengatakan

                  Rab, 28 Januari 2015 pada 10:33 am

                  Baca kembali komentar saya di atas. Pastikan juga Anda sudah menggunakan PHPMaker versi yang terakhir; saat komentar ini saya tulis adalah versi 11.

  2. Dudi mengatakan

    Sel, 4 Oktober 2016 pada 9:48 pm

    Bang kalau redirectnya ke halaman lain setelah add data bagaimana ?
    Misal setelah kita input data , lalu akan dilanjutkan ke halaman lain selain halaman yang di buat phpmaker , bisa kah ?
    Terima kasih sebelumnya

    Balas
    • Masino Sinaga mengatakan

      Rab, 5 Oktober 2016 pada 8:58 am

      Misalkan Anda ingin me-redirect ke halaman test.php, maka ketikkan halaman itu dari bagian Table setup -> Return Pages -> After add, lalu generate ulang semua file script seperti biasa.

      Balas
      • Dudi mengatakan

        Rab, 5 Oktober 2016 pada 10:06 am

        thx bang …. berhasil

        Balas
        • Masino Sinaga mengatakan

          Kam, 6 Oktober 2016 pada 11:18 pm

          Sama-sama.

          Balas
  3. Art mengatakan

    Sel, 30 Januari 2018 pada 9:54 am

    makasih om, sangat membantu

    Balas
    • Masino Sinaga mengatakan

      Rab, 21 Februari 2018 pada 8:10 pm

      Sama-sama.

      Balas
  4. Negiverz mengatakan

    Sel, 30 Januari 2018 pada 9:55 am

    hatur nuhun om sinaga, tutorna bermanfaat sekali atuh

    Balas
    • Masino Sinaga mengatakan

      Rab, 21 Februari 2018 pada 8:11 pm

      Sami-sami, kang. 🙂

      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