Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Mari Berkenalan dengan Server Event Route_Action di PHPMaker 2021
Setelah Route_Action, Ada Lagi Server Event Api_Action di PHPMaker 2021
Mudahnya Membuat Fake Delete yang Bisa Multi Record di PHPMaker 2021

Mari Berkenalan dengan Server Event Route_Action di PHPMaker 2021

Sen, 17 Mei 2021 oleh Masino Sinaga 1 Komentar

Sejak versi 2021, PHPMaker memperkenalkan sebuah server event baru yang bernama Route_Action. Fungsinya untuk membuat route baru, selain route built-in yang sudah disediakan oleh PHPMaker, seperti: add, edit, delete, list, view, search, atau update.

Untuk route built-in yang kita sebutkan di atas tadi, sudah pernah kita bahas pada artikel Mengenal SEO-Friendly URL di Aplikasi Web yang Dihasilkan oleh PHPMaker 2021.

Dengan menggunakan server event Route_Action, maka kita sebagai Web Developer dapat menambahkan aksi controller kita sendiri ke dalam controller yang terdapat di Aplikasi Web yang dihasilkan oleh PHPMaker. Untuk informasi lebih lanjut, dapat dibaca pada dokumentasi Slim Framework’s Routing.

Tidak banyak penjelasan yang terdapat di menu Help PHPMaker 2021 mengenai server event Route_Action ini. Satu-satunya cara untuk mengenal lebih dalam server event tersebut adalah dengan mencobanya secara langsung.

Untuk itu kita akan kembali menggunakan project demo2021 yang bisa kita download file-nya untuk dicoba di localhost kita masing-masing.

Sekarang mari kita buka file demo2021 tersebut dengan menggunakan PHPMaker 2021, kemudian silahkan langsung lompat lokasi ini: Server Events -> Global -> All Pages -> Route_Action, lalu masukkan kode berikut ke dalam server event tersebut:

    $app->any('/my-models', function ($request, $response, $args) {
        $oldresponse = "";
        if (!isset($_GET['searchTerm'])) { 
            $data =   ExecuteRows("SELECT ID AS id, Model AS Text FROM models ORDER BY ID LIMIT 10");
        } else { 
            $search = $_GET['searchTerm'];   
            $search = AdjustSql($search);
            $data =  ExecuteRows("SELECT ID AS id, Model AS Text FROM models WHERE Model LIKE '%".$search."%' LIMIT 10");
        } 
        return $response->withJson($data);	 
    });

Jika sudah, simpan project-nya, lalu pastikan untuk men-generate ulang file script seperti biasa menggunakan PHPMaker 2021.

Kita asumsikan bahwa Aplikasi Web di-generate ke dalam sub-folder demo2021 di bawah root folder web server yang kita gunakan, maka kita dapat mengakses alamat ini melalui browser:

http://localhost/demo2021/my-models

Perhatikanlah hasilnya. Seharusnya Aplikasi Web akan menampilkan output sebagai berikut:

[{"id":"1","0":"1","Text":"240SX","1":"240SX"},{"id":"2","0":"2","Text":"530iabc","1":"530iabc"},{"id":"3","0":"3","Text":"645Ci","1":"645Ci"},{"id":"4","0":"4","Text":"735i","1":"735i"},{"id":"5","0":"5","Text":"745i","1":"745i"},{"id":"6","0":"6","Text":"Allante","1":"Allante"},{"id":"7","0":"7","Text":"Avenger","1":"Avenger"},{"id":"8","0":"8","Text":"B350 Ram","1":"B350 Ram"},{"id":"9","0":"9","Text":"C230 Kompressor Sport Coupe","1":"C230 Kompressor Sport Coupe"},{"id":"10","0":"10","Text":"C240","1":"C240"}]

Itu artinya kode yang kita masukkan ke dalam server event Route_Action tadi berfungsi sebagaimana mestinya. Kode tersebut akan menampilkan semua record yang berada di table models dalam format JSON (JavaScript Object Notation).

Kemudian, cobalah ubah URL di browser tadi menjadi seperti ini:

http://localhost/demo2021/my-models?searchTerm=Avenger

Lalu perhatikan sekarang seperti apa output-nya? Seharusnya yang muncul di halaman browser adalah seperti ini:

[{"id":"7","0":"7","Text":"Avenger","1":"Avenger"}]

Dari URL yang kedua tadi, kita mencoba menambahkan parameter untuk menyaring data yang ditampilkan dengan menyertakan parameter searchTerm yaitu Avenger, maka sistem hanya menampilkan data dari table models yang bernama Avenger.

Dengan contoh yang sangat sederhana tersebut, bisa kita ambil kesimpulan bahwa server event Route_Action sangat cocok digunakan jika kita ingin mengembalikan output dalam format JSON melalui URL yang business-logic dan route-nya bisa kita tentukan sendiri sesuai kebutuhan.

Jadi, di sini tidak ada HTML tag yang kita sertakan. Hanya data dalam format JSON saja yang kita tampilkan berdasarkan fungsi global ExecuteRows yang kita panggil di dalam server event tersebut.

Contoh penerapan dari server event Route_Action ini juga bisa lewat pemakaian AJAX yang akan mengembalikan nilai tertentu berdasarkan alamat URL yang bisa kita definisikan route-nya sesuai keinginan kita.

Selain itu, kita juga bisa membuat routes sendiri menggunakan server event tersebut. Solusi selengkapnya, silahkan simak artikel Membuat URL yang SEO-Friendly Tanpa Menggunakan Nama Table di PHPMaker 2021.

Artikel ini telah diperbarui pada hari Senin, 16 Agustus 2021 sekitar pukul 11.20 WIB, dengan menambahkan link ke artikel Membuat URL yang SEO-Friendly Tanpa Menggunakan Nama Table di PHPMaker 2021.

Ditempatkan di bawah: PHPMaker Ditag dengan:Belajar PHPMaker, PHPMaker 2021, PHPMaker Indonesia, Route_Action, 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.

Setelah Route_Action, Ada Lagi Server Event Api_Action di PHPMaker 2021
Mudahnya Membuat Fake Delete yang Bisa Multi Record di PHPMaker 2021

Trackbacks

  1. Setelah Route_Action, Ada Lagi Server Event Api_Action di PHPMaker 2021 – Masino Sinaga berkata:
    Sel, 18 Mei 2021 pukul 10:51 am

    […] Anda di sini: Beranda / PHPMaker / Setelah Route_Action, Ada Lagi Server Event Api_Action di PHPMaker 2021 Mari Berkenalan dengan Server Event Route_Action di PHPMaker 2021 […]

    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

  • 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
  • Thien Rudi pada Hati-Hati Memilih Versi PHP Sebelum Generate Code di PHPMaker 2022
  • Masino Sinaga pada Cara Menggunakan Login by session variables di Aplikasi Web dari PHPMaker 2021
  • Masino Sinaga pada Cara Menggunakan Login by session variables di Aplikasi Web dari PHPMaker 2021
  • Masino Sinaga pada Cara Menggunakan Login by session variables di Aplikasi Web dari 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 - 2021 | WordPress | Catat masuk | Kembali ke atas