Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Mudahnya Membatasi Akses ke Record Tertentu di Aplikasi Web dari PHPMaker
Mau Beli PHPMaker? Hubungi Saya sebagai Reseller PHPMaker di Indonesia!
Mudahnya Memvalidasi Input Periode Tanggal di Aplikasi Web dari PHPMaker

Mudahnya Membatasi Akses ke Record Tertentu di Aplikasi Web dari PHPMaker

Sen, 17 November 2014 oleh Masino Sinaga 2 Komentar

Ketika Anda sebagai Web Developer memutuskan untuk menggunakan PHPMaker untuk membangun Aplikasi Web, maka pada saat itu sebenarnya Anda secara tidak sadar sudah mendapatkan banyak sekali keuntungan yang tidak akan Anda duga-duga terjadi dalam hidup Anda. Ini merupakan salah satu kejutan yang tidak akan pernah Anda dapatkan dari tools sejenis atau pun pada metode pengembangan Aplikasi Web lainnya. Bahkan, setiap hari Anda akan menemukan hal-hal baru, yang sama sekali sebelumnya tidak pernah Anda kira sudah disediakan di PHPMaker.

Pada artikel kali ini, lagi-lagi kita akan menampilkan salah satu dari sekian banyaknya kejutan itu. Sekalipun server event yang terkait dengan kejutan ini sudah pernah kita bahas dulu, tapi tidak ada salahnya jika kita bahas kembali. Apalagi di artikel yang ini terkait erat dengan salah satu artikel saya mengenai Mudahnya Membatasi Hanya 1 Record di Halaman List Aplikasi Web dari PHPMaker.

Di artikel barusan, kita sudah mengetahui bahwa Anda sebagai Web Developer dapat membatasi jumlah Record yang akan ditampilkan di halaman List. Tapi kalau Anda cermati lagi artikel tadi, ternyata Pengguna yang cerdik masih tetap bisa mengakses secara langsung Record yang disembunyikan, baik melalui fungsi atau halaman View, Edit, Delete, ataupun Copy (menggunakan halaman Add) dengan cara mengetikkan URL-nya secara langsung di browser. Penasaran ingin tahu bagaimana cara mengatasinya?

Jangan khawatir, karena di artikel berikut ini, kita akan membahas bagaimana cara untuk membatasi Record-Record yang disembunyikan tadi supaya tidak bisa diakses melalui fungsi View, Edit, Delete, dan Copy. Supaya lebih mudah Anda mengikutinya, maka kita berasumsi tetap mengacu kepada contoh kasus yang terdapat di artikel pada link di atas tadi.

PHPMaker sudah menyediakan sebuah server event yang bernama Row_Selected. Sekedar untuk mengingatkan Anda kembali, server event ini akan dipanggil setelah sistem berhasil memilih atau menyaring sebuah Record. Argumen dari server event ini hanya satu, yaitu Record yang sudah dipilih sebagai sebuah array. Artinya, Anda sebagai Web Developer dapat mengambil informasi yang terdapat di field tertentu dengan menggunakan sintaks untuk mengakses elemen array.

Nah, kembali kepada topik semula, maka Anda sebagai Web Developer cukup hanya menambahkan kode berikut ke dalam server event Row_Selected, sehingga hasil selengkapnya menjadi seperti ini:

// Row Selected event
function Row_Selected(&$rs) {
	//echo "Row Selected";
	if ( ($rs["OrderID"] != "10248" && CurrentPageID() == "view") || 
		($rs["OrderID"] != "10248" && CurrentPageID() == "edit") || 
		($rs["OrderID"] != "10248" && CurrentPageID() == "add") || 
		($rs["OrderID"] != "10248" && CurrentPageID() == "delete") ) {
		$this->Page_Terminate("orderslist.php");
	}
}

Perhatikan kode di atas. Karena hanya ada satu Record yang boleh ditampilkan dan diakses, maka dalam hal ini kita harus menentukan data ID Pesanan acuan melalui field OrderID. Karena kita mengacu kepada project demo dan kita asumsikan nilai ID Pesanan yang terkecil adalah 10248, maka nilai ini yang menjadi acuan sebagai ID Pesanan satu-satunya yang boleh diakses.

Artinya, dari kode barusan, sistem akan memeriksa jika ID Pesanan tidak sama dengan 10248 dan ID halaman yang diakses sama dengan View, Edit, Add (digunakan juga untuk fungsi Copy), dan Delete, maka sistem akan me-redirect Pengguna ke halaman List Pesanan (orderlist.php). Nilai 10248 ini bisa saja berbeda dengan nilai ID Pesanan yang terkecil di file demo project Anda, untuk itu, silahkan Anda sesuaikan sendiri sesuai dengan kebutuhan.

Wow, betapa mudahnya, bukan? 😀

Ditempatkan di bawah: PHPMaker Ditag dengan: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.

Mau Beli PHPMaker? Hubungi Saya sebagai Reseller PHPMaker di Indonesia!
Mudahnya Memvalidasi Input Periode Tanggal di Aplikasi Web dari PHPMaker

Komentar

  1. bagus mengatakan

    Ming, 23 Agustus 2020 pada 10:28 pm

    ada contoh penulisannya / kasusnya bang ?
    jika angka 10248 nya diganti berupa row id yang kita klik. terimakasih sebelumnya

    Balas
    • Masino Sinaga mengatakan

      Sen, 24 Agustus 2020 pada 12:22 pm

      Server event Row_Selected memiliki satu param aja, yaitu $rs yang merupakan record atau row yang sudah dipilih.

      Jika ingin mengetahui nilai dari field id, maka cukup dengan meggunakan kode berikut:

      $my_id = $rs["id"];
      $this->setMessage("My ID is: " . $my_id);

      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

  • 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
  • File-File yang Wajib Diperhatikan Setelah Menambah Item User Values di PHPMaker 2025
  • Begini Cara Memuat Tables dari Database Secara Dinamis di PHPMaker 2025

Menu

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

Komentar Terbaru

  • Masino Sinaga pada Mudahnya Menyesuaikan Timezone di Calendar Report pada PHPMaker 2023
  • Nano pada Mudahnya Menyesuaikan Timezone di Calendar Report pada PHPMaker 2023
  • Charly pada Mudahnya Menyembunyikan Tombol Master/Detail di Halaman View pada PHPMaker 2023
  • Charly pada Mudahnya Menyembunyikan Tombol Master/Detail di Halaman View pada PHPMaker 2023
  • Masino Sinaga pada Mudahnya Menyembunyikan Tombol Master/Detail di Halaman View pada PHPMaker 2023

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