Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Mencegah Pengguna Akhir Mengubah Data Melalui Akses URL di PHPMaker 2021
Membuat URL yang SEO-Friendly Tanpa Menggunakan Nama Table di PHPMaker 2021
Menyembunyikan Tombol Edit Berdasarkan Kondisi Tertentu dari PHPMaker 2021

Mencegah Pengguna Akhir Mengubah Data Melalui Akses URL di PHPMaker 2021

Sen, 2 Agustus 2021 oleh Masino Sinaga 4 Komentar

Ada satu pertanyaan yang cukup bagus terkait dengan artikel Menyembunyikan Tombol Edit Berdasarkan Kondisi Tertentu dari PHPMaker 2021.

Sekedar mengingatkan kembali, artikel di atas menjelaskan betapa mudahnya kita dapat menyembunyikan tombol atau link Edit yang menampilkan form Edit untuk mengubah data. Artinya, meskipun kita dapat menyembunyikan tombol Edit tadi, maka Pengguna Akhir masih tetap dapat mengakses halaman Edit melalui URL-nya. Cukup dengan menyalin link tersebut ke browser, maka form Edit akan terbuka.

Tentu saja kemungkinan-kemungkinan seperti itu harus bisa ditangani. Artinya, kita harus dapat mencegah Pengguna Akhir mengubah data hanya untuk kriteria tertentu sesuai dengan yang sudah kita bahas pada artikel di atas tadi. Jangan sampai Pengguna Akhir bisa mengakali dengan langsung akses lewat URL halaman Edit-nya.

Caranya bagaimana? Ternyata gampang sekali. Kita cukup menggunakan server event Row_Selected. Seperti namanya, server event ini akan dipanggil oleh sistem ketika Pengguna baru saja berhasil memilih suatu record tertentu.

Kita bisa menggunakan server event ini untuk menambahkan business-logic yang akan mencegah Pengguna Akhir mengakses record tertentu. Jadi, ketika halaman Edit untuk record tertentu diakses, maka kita bisa mencegahnya untuk mengakses halaman tersebut.

Katakanlah kita masih menggunakan contoh yang sama yang dibahas pada artikel di atas, maka kita cukup menambahkan sedikit kode PHP saja ke dalam server event Row_Selected yang lokasinya berada di bawah Server Events -> Table-Specific -> Common, milik table orders:

// Row Selected event
function Row_Selected(&$rs)
{
    //Log("Row Selected");
    if ($rs["OrderID"] != "11085" && CurrentPageID() == "edit") {
        $this->setFailureMessage("Anda tidak diijinkan mengubah data pesanan dengan ID = 11085");
        $this->terminate("orderslist");
    }
}

Kode di atas artinya, jika Pengguna Akhir mengakses langsung halaman Edit untuk record dengan OrderID = 11085, dengan cara menyalin URL yang bertalian ke browser, maka sistem akan mencegah, dengan menampilkan pesan Anda tidak diijinkan mengubah data pesanan dengan ID = 11085. Setelah itu, sistem akan otomatis me-redirect ke halaman List milik table orders.

Betapa mudah dan cepat sekali, bukan? Tidak perlu menulis kode sampai berpuluh-puluh, beratus-ratus, atau bahkan beribu-ribu baris. Mengapa? Karena PHPMaker 2021 sudah menangani sisanya. Kita hanya cukup menambahkan sedikit kode PHP itu saja.

Ditempatkan di bawah: PHPMaker Ditag dengan:Belajar PHPMaker, PHPMaker 2021, PHPMaker Indonesia, Row_Selected, 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, ilovephpmaker.com, dan phpmakerprojects.com.

Membuat URL yang SEO-Friendly Tanpa Menggunakan Nama Table di PHPMaker 2021
Menyembunyikan Tombol Edit Berdasarkan Kondisi Tertentu dari PHPMaker 2021

Komentar

  1. luthfi mengatakan

    Sab, 14 Agustus 2021 pada 9:48 am

    kang mau nanya kalo kita menggunakan costume file untuk creat table tapi ada list_optionsnya gimana ya, saya tadinya mau pake function bawaan ExecuteHtml($sql,[options]), tapi nyari options yang buat list options tidak ada ya kang ? btw saya menggunakan v2020

    Balas
    • Masino Sinaga mengatakan

      Sab, 14 Agustus 2021 pada 9:58 am

      Kalau pakai function ExecuteHtml, kita tidak dapat menambahkan fitur ListOptions seperti di halaman List yang di-generate oleh PHPMaker.

      Kalau ingin menggunakan ListOptions, disarankan tetap menggunakan halaman List hasil generate dari PHPMaker kang.

      Balas
  2. luthfi mengatakan

    Sab, 14 Agustus 2021 pada 1:05 pm

    Oke Kang Masino Terimakasih… atas saranya

    Balas
    • Masino Sinaga mengatakan

      Ming, 15 Agustus 2021 pada 7:58 am

      Sama-sama.

      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

  • Masino Extensions for PHPMaker 2025 Now Changed!
  • Begini Mudahnya Mengurangi Lebar Combobox pada PHPMaker 2025
  • Mudahnya Mengubah Nilai Delay Auto Hide Success Message di PHPMaker 2025
  • Mudahnya Berpindah Layout dari Table ke Cards di Halaman List lewat PHPMaker 2025
  • Jangan Lupa Pakai AdjustSql Saat Insert atau Update Data Lewat ExecuteStatement

Menu

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

Komentar Terbaru

  • Masino Sinaga pada Cara Mengetahui Detail Error di Aplikasi Web yang Dihasilkan oleh PHPMaker 2021
  • Dendi pada Cara Mengetahui Detail Error di Aplikasi Web yang Dihasilkan oleh PHPMaker 2021
  • Charly pada PHPMaker: PHP Code Generator + PHP Framework
  • Masino Sinaga pada PHPMaker: PHP Code Generator + PHP Framework
  • Masino Sinaga pada PHPMaker: PHP Code Generator + PHP Framework

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