Masino Sinaga

Web Development and PHPMaker

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

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?

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.

    Balas
    • 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.

      Balas
      • Rijal mengatakan

        Ming, 21 Desember 2014 pada 2:08 pm

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

        Balas
        • Masino Sinaga mengatakan

          Ming, 21 Desember 2014 pada 3:45 pm

          Sama-sama. 🙂

          Balas
          • 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.

            Balas
            • 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 } ?>
              
              Balas
  2. Dany mengatakan

    Sab, 14 Mei 2016 pada 7:20 pm

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

    Balas
    • Masino Sinaga mengatakan

      Ming, 15 Mei 2016 pada 1:50 pm

      Baca topik Field Setup dari menu Help PHPMaker.

      Balas

Tinggalkan Balasan ke Rijal 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

  • 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
  • MasinoSignature18 Extension, Mudahnya Mengelola Tanda Tangan di PHPMaker 2022
  • MasinoFormWizard18 Extension, Mengubah Tampilan Multi-Page di PHPMaker 2022

Menu

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

Komentar Terbaru

  • Masino Sinaga pada Hati-Hati Memilih Versi PHP Sebelum Generate Code di PHPMaker 2022
  • fikri pada Hati-Hati Memilih Versi PHP Sebelum Generate Code di PHPMaker 2022
  • Masino Sinaga pada Hati-Hati Memilih Versi PHP Sebelum Generate Code di PHPMaker 2022
  • fikri pada Hati-Hati Memilih Versi PHP Sebelum Generate Code di PHPMaker 2022
  • Masino Sinaga pada Beginilah PHPMaker Menangani Keamanan Level Pengguna Secara Dinamis

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