Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Jangan Pernah Lagi Mencampur Kode PHP di Client Script atau Startup Script pada PHPMaker 2021
Solusi Supaya PreviewRow dan PreviewOverlay Bisa Sama-Sama Berfungsi di PHPMaker 2021
Seperti Ini Mudahnya Menyembunyikan Data Label di Chart dari PHPMaker 2021

Jangan Pernah Lagi Mencampur Kode PHP di Client Script atau Startup Script pada PHPMaker 2021

Kam, 24 Desember 2020 oleh Masino Sinaga 6 Komentar

Pada PHPMaker versi 2020 dan versi-versi major sebelumnya, kita dapat mencampur kode PHP di bagian Client Script dan/atau Startup Script. Sayangnya, sejak PHPMaker versi 2021, hal itu sudah tidak bisa lagi. Kita tidak dapat menulis kode PHP di antara kode Javascript/jQuery pada kedua bagian tadi.

Belakangan, ketentuan ini sedikit berubah. Hanya untuk level global saja ketentuan ini berlaku. Sedangkan untuk level table/page, maka ketentuan ini tidak berlaku. Itu artinya, kita masih bisa mencampur kode PHP ke dalam kode Javascript di bagian Client Script atau Startup Script pada level table/page.

Tentu timbul pertanyaan, mengapa? Jawabannya, karena kode yang di-generate oleh PHPMaker pada bagian Client Script dan Startup Script untuk level global tadi, akan ditempatkan ke dalam file .js (Javascript). Itu artinya, kode di dalam file .js tidak boleh mengandung kode PHP.

O iya. Sekedar mengingatkan saja. Kedua bagian Client Script dan Startup Script tersebut dikenal dengan istilah Client Scripts (dengan akhiran huruf s) di dalam project PHPMaker, yaitu area yang disediakan bagi Web Developer untuk menulis kode Javascript/jQuery, agar kode tersebut nantinya dieksekusi di sisi client (browser) dari Aplikasi Web yang dibangkitkan oleh PHPMaker.

Istilah Client Scripts di dalam project PHPMaker meliputi 2 bagian tadi, yaitu Client Script (tanpa akhiran huruf s), dan Startup Script.

Jadi, jika Anda melihat istilah Client Scripts (dengan akhiran huruf s) dalam PHPMaker, jangan bingung lagi ya, karena istilah itu mengacu kepada 2 bagian tadi, yaitu Client Script (tanpa akhiran huruf s) dan Startup Script.

Kembali ke topik semula.

Jika kita sudah tidak bisa lagi mencampur kode PHP dengan kode Javascript/jQuery di bagian Client Scripts, maka pertanyaan selanjutnya adalah, bagaimana jika kita ingin menambahkan business-logic yang biasanya kita tulis dengan kode PHP? Hehe, pertanyaan bagus dan cerdas!

Jawabannya: tidak perlu khawatir! Seperti biasa, tetap tenang, stay cool, dan jangan panik, hehehe…

Di PHPMaker 2021, sudah tersedia sebuah fungsi PHP global yang bernama SetClientVar. Sesuai namanya, fungsi ini untuk mengeset variable dari sisi server ke sisi client. Ada dua parameter di dalam fungsi tersebut. Parameter pertama adalah nama variabel di sisi client, sedangkan parameter kedua adalah nilai atau variable di sisi server, yang akan kita kirim ke sisi client.

Untuk menggunakan fungsi global itu, PHPMaker pun sudah menyediakan server event khusus yang bernama Page_Rendering yang berada di bawah lokasi berikut: Server Events -> Global -> All Pages.

Contoh, kita ingin mengirim nilai current user id ke sisi client, maka cukup dengan menulis kode berikut pada server Page_Rendering tersebut:

	// pass variables from server-side to to client-side:
	SetClientVar("curUserId", CurrentUserID());

Dalam contoh kode ini, nama variable di sisi client adalah curUserId, dan karena tipenya String, maka harus diapit dengan karakter petik ganda. Variabel curUserId tersebut artinya akan diisi dengan nilai dari fungsi global PHP bawaan PHPMaker yang bernama CurrentUserID().

Selanjutnya, untuk menangkap nilai dari variable di sisi client, kita bisa menulis kode Javascript pada area Client Scripts dari project PHPMaker. Uniknya, PHPMaker sudah menyediakan sebuah variable global dalam bentuk object variable, untuk menampung semua variable yang diset dari sisi server tadi, yaitu ew.vars.

Scope dari object variable ini adalah global. Itu artinya, kita bisa membaca nilai variable tadi dari bagian manapun di dalam project PHPMaker.

Dalam contoh di atas, maka kita cukup menulis kode Javascript berikut dari bagian Client Scripts project PHPMaker:

	// get variable from server-side in client-side:
	var curUserId = ew.vars.curUserId;

Dalam kode ini, kita mendeklarasikan variable Javascript yang bernama curUserId, yang nilainya kita tampung dari object variable ew.vars.curUserId.

Sangat mudah, bukan?

Meskipun sekarang kita sudah tidak bisa lagi menggunakan atau mencampur kode PHP ke dalam kode Javascript/jQuery di sisi client, kita masih tetap dapat menghubungkan sisi server dan sisi client dengan menggunakan fungsi global SetClientVar.

PHPMaker memang tiada duanya, hehehe… 🙂

Catatan: artikel ini diperbarui pada hari Jumat, 30 April 2021 sekitar pukul 15:56, dengan menambahkan informasi bahwa ketentuan ini hanya berlaku untuk Client Script dan Startup Script yang scope-nya global. Sedangkan untuk Client Script dan Startup Script yang scope-nya table/page, ketentuan ini tidak berlaku.

Ditempatkan di bawah: PHPMaker Ditag dengan:Belajar PHPMaker, Client Script, Client Scripts, Client-Side, PHPMaker 2021, PHPMaker Indonesia, Startup Script, 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 Supaya PreviewRow dan PreviewOverlay Bisa Sama-Sama Berfungsi di PHPMaker 2021
Seperti Ini Mudahnya Menyembunyikan Data Label di Chart dari PHPMaker 2021

Komentar

  1. Abu Syifa mengatakan

    Sab, 16 Januari 2021 pada 6:57 am

    Bisakah SetClientVar digunakan di Page_Render?

    Balas
    • Masino Sinaga mengatakan

      Sab, 16 Januari 2021 pada 12:13 pm

      Mungkin bisa, tapi scope-nya hanya untuk halaman itu saja.

      Balas
  2. Rudy mengatakan

    Rab, 10 Februari 2021 pada 12:45 pm

    pak masino apakah ini juga berlaku di phpmaker 2020 ?

    Balas
    • Masino Sinaga mengatakan

      Rab, 10 Februari 2021 pada 3:12 pm

      Hehe, kan sudah disebutkan di judulnya… pada PHPMaker 2021. Berarti untuk PHPMaker 2020 tidak berlaku. 😉

      Balas
  3. sukirno kasau mengatakan

    Ming, 11 April 2021 pada 11:59 am

    $(document).ready(function(){
    $(“#x_Category”).change(function() {
    var str = $(“option:selected”, this);
    if (this.value == “Consumable”) {
    $(“#r_Count”).show();
    } else {
    $(“#r_Count”).hide();
    }
    });
    });

    mas masino untuk script di atas bisa di simpan dimn kalau di phpmaker 2021

    Balas
    • Masino Sinaga mengatakan

      Sab, 17 April 2021 pada 10:13 am

      Di bagian Startup Script.

      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

  • Alasan 11 Harus Pakai Masino Extensions: Auto Thousand Separator
  • Alasan 10 Harus Pakai Masino Extensions: Form Wizard
  • Alasan 9 Harus Pakai Masino Extensions: Help Online di Setiap Halaman
  • Alasan 8 Harus Pakai Masino Extensions: Improvement Modal Dialog
  • Alasan 7 Harus Pakai Masino Extensions: Improvement Calendar Reports

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