Masino Sinaga

Web Development, PHPMaker, & PHP Report Maker

Anda di sini: Beranda / PHPMaker / Solusi Agar Custom Files Bisa Memanggil Server Event Page_Loading di PHPMaker
Penasaran Mau Tahu Cara Membuat Extensions di PHPMaker?
File CSS Apa Saja yang Terkait Style Aplikasi Web dari PHPMaker 11?

Solusi Agar Custom Files Bisa Memanggil Server Event Page_Loading di PHPMaker

September 26, 2014 oleh Masino Sinaga 8 Komentar

Sekedar mengingatkan kembali, bahwa sejak versi 11, PHPMaker menambahkan fitur Custom Files. Fitur ini menggantikan fitur Generate a blank page di versi 10 dan sebelumnya. Dengan menggunakan Custom Files, maka Anda sebagai Web Developer dapat membuat file yang kontennya bebas dan dapat dikostumisasi dengan mudah dari dalam project PHPMaker Anda.

Keuntungan lainnya dari Custom File adalah, file yang dibuat dapat menggunakan fitur Security yang pengaturannya ditentukan dari dalam project PHPMaker. Anda bahkan dapat memberikan hak akses tertentu kepada Pengguna dengan level tertentu pula. Terakhir, Anda pun dapat memutuskan apakah ingin menyertakan Header dan Footer saat PHPMaker men-generate file tersebut atau tidak.

Hari ini saya menemukan satu kasus ringan tapi cukup berdampak sistemik, ehm. Apa itu? Saat menggunakan fitur Custom Files, maka file yang di-generate oleh PHPMaker tersebut ternyata tidak memanggil server event Page_Loading (masih ingat dengan server event ini?). Sementara kita ketahui, bahwa sering kali kita menggunakan server event ini untuk menempatkan pemanggilan fungs-fungsi yang bersifat global dan harus dijalankan di semua halaman.

Selidik punya selidik, ternyata isu ini disebabkan karena PHPMaker memang tidak memperbolehkan template-nya membangkitkan pemanggilan server event ini, melalui kode yang terdapat di sisi Template-nya pada file phpcommon-scripts.php:

<!--##
	if (CTRL.CtrlType.toLowerCase() != "field" && CTRL.CtrlID != "custom") {
		if (SYSTEMFUNCTIONS.ServerScriptExist("Global","Page_Loading")) {
##-->
		// Global Page Loading event (in userfn*.php)
		Page_Loading();
<!--##
		}
	}
##-->

Perhatikan pada bagian kode yang ini:

CTRL.CtrlID != "custom"

Ini merupakan penyebab mengapa PHPMaker tidak pernah membangkitkan kode untuk memanggil server event Page_Loading untuk file-file yang dihasilkan pada bagian Custom Files.

Syukurlah, akhirnya setelah meng-override kode tersebut ke dalam Masino Extensions yang saya buat untuk PHPMaker, sekarang server event Page_Loading menjadi dapat dipanggil dari dalam file yang dihasilkan pada bagian Custom Files.

Ditempatkan di bawah: PHPMaker Ditag dengan:Page_Loading, 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.

Penasaran Mau Tahu Cara Membuat Extensions di PHPMaker?
File CSS Apa Saja yang Terkait Style Aplikasi Web dari PHPMaker 11?

Comments

  1. Rijal mengatakan

    Desember 21, 2014 pada 11:48 am

    Pak Masino, saya coba membuat Custom Files (include common file) yang berfungsi sebagai form Pencarian.
    kira2 sperti ini :

    …..form id=”cari_data” name=”cari_data” method=”post” action=”cari_data.php” …>
    // input type =text name=kode …
    // input type =submit name=cari …
    …. /form>

    if(isset($_POST[“cari”]))
    {
    // disini Query cari
    $q_cari=mysql_query(“select bla bla…….

    // disini ditampilkan hasil pencarian

    script yg sy buat berjalan ketika dijalankan sendiri (tanpa PHP Maker) tapi ketika di gabung di Custom Files tidak bisa , muncul pesan :
    “Permintaan Post Tidak Valid”

    kira2 apa ya Pak penyebabnya, atau PHP Maker memang tdk mendukung Pemrosesan PHP Manual di dalam projeknya ?
    Terimakasih.

    Balas
    • Masino Sinaga mengatakan

      Desember 21, 2014 pada 1:47 pm

      Sejak versi 11, PHPMaker secara standar menggunakan kode token untuk Form Post. Anda bisa menonaktifkannya dengan menghapus tanda centang Check token for form post dari menu Tools -> Advanced Settings, lalu generate ulang semua file script seperti biasa.

      Balas
      • Rijal mengatakan

        Desember 21, 2014 pada 2:08 pm

        oke Pak, sdah sy coba dan berjalan.
        makasih-makasih Pak…

        Balas
        • Masino Sinaga mengatakan

          Desember 21, 2014 pada 3:45 pm

          Sama-sama. 🙂

          Balas
          • Rijal mengatakan

            Desember 21, 2014 pada 6:57 pm

            satu lagi yg mengganjal nih Pak Masino. hehe
            bagaimana caranya mengambil nilai (variabel) User ID di halaman Custom Files ?

            sy sdh coba baca2 artikel yg ini http://www.masinosinaga.com/phpmaker/menyisipkan-kode-setelah-pengguna-berhasil-login-di-aplikasi-web-dari-phpmaker/
            tp kayaknya tidak bisa digunakan utk Kasus ini.
            Terimakasih.

            Balas
            • Masino Sinaga mengatakan

              Desember 22, 2014 pada 10:30 am

              PHPMaker sudah menyediakan global function yang bernama CurrentUserID() untuk mengembalikan nilai UserID dari pengguna yang sedang login, atau CurrentUserName() untuk mengembalikan UserName dari pengguna yang sedang login.

              Contoh penggunaan di Custom Files:

              <?php if (IsLoggedIn()) { // pastikan sudah login ?>
              <?php echo "Selamat datang, <strong>" . CurrentUserName() . "</strong>!"; ?>
              <?php } ?>
              
              Balas
  2. Dany mengatakan

    Mei 14, 2016 pada 7:20 pm

    Cara menerapkan number format rupiah gimana ya? script-nya seperti apa?

    Balas
    • Masino Sinaga mengatakan

      Mei 15, 2016 pada 1:50 pm

      Baca topik Field Setup dari menu Help PHPMaker.

      Balas

Tinggalkan Balasan Batalkan balasan

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Pos-pos Terbaru

  • Server Event Page_Render dan Page_Rendering di PHPMaker, Apa Sih Bedanya?
  • Begini Mudahnya Mengubah Judul Browser Secara Dinamis di PHPMaker 2021
  • Solusi Supaya PreviewRow dan PreviewOverlay Bisa Sama-Sama Berfungsi di PHPMaker 2021
  • Jangan Pernah Lagi Mencampur Kode PHP di Client Script atau Startup Script pada PHPMaker 2021
  • Seperti Ini Mudahnya Menyembunyikan Data Label di Chart dari PHPMaker 2021

Menu

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

Komentar Terbaru

  • Masino Sinaga pada Setting Import Data Berikut Wajib Anda Ketahui Bedanya di PHPMaker 2021
  • Masino Sinaga pada Jangan Pernah Lagi Mencampur Kode PHP di Client Script atau Startup Script pada PHPMaker 2021
  • Masino Sinaga pada Mudahnya Menambahkan Global Function untuk Auto-Update Field di PHPMaker
  • Abu Syifa pada Setting Import Data Berikut Wajib Anda Ketahui Bedanya di PHPMaker 2021
  • Abu Syifa pada Jangan Pernah Lagi Mencampur Kode PHP di Client Script atau Startup Script pada PHPMaker 2021

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 - 2019 | WordPress | Catat masuk | Kembali ke atas