Masino Sinaga

A Web Developer Who Helps Web Developers

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

Jum, 26 September 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

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

Komentar

  1. Rijal mengatakan

    Ming, 21 Desember 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.

    Reply
    • Masino Sinaga mengatakan

      Ming, 21 Desember 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.

      Reply
      • Rijal mengatakan

        Ming, 21 Desember 2014 pada 2:08 pm

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

        Reply
        • Masino Sinaga mengatakan

          Ming, 21 Desember 2014 pada 3:45 pm

          Sama-sama. 🙂

          Reply
          • Rijal mengatakan

            Ming, 21 Desember 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.

            Reply
            • Masino Sinaga mengatakan

              Sen, 22 Desember 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 } ?>
              
              Reply
  2. Dany mengatakan

    Sab, 14 Mei 2016 pada 7:20 pm

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

    Reply
    • Masino Sinaga mengatakan

      Ming, 15 Mei 2016 pada 1:50 pm

      Baca topik Field Setup dari menu Help PHPMaker.

      Reply

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 21 Harus Pakai Masino Extensions: Form Wizard dengan jQuery SmartWizard v7
  • 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

Menu

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

Komentar Terbaru

  • Alasan 21 Harus Pakai Masino Extensions: Form Wizard dengan jQuery SmartWizard v7 pada Alasan 10 Harus Pakai Masino Extensions: Form Wizard
  • Masino Sinaga pada Kode Javascript yang Berubah di PHPMaker 2026 dari PHPMaker 2025
  • Masino Sinaga pada Kode Javascript yang Berubah di PHPMaker 2026 dari PHPMaker 2025
  • Charly pada Kode Javascript yang Berubah di PHPMaker 2026 dari PHPMaker 2025
  • Charly pada Kode Javascript yang Berubah di PHPMaker 2026 dari PHPMaker 2025

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