bagaimana cara membatasi record bagi masing-masing user

permisi saya ingin bertanya mengenai cara membatasi record database di codeigniter untuk masing-masing user, misal database maksimal yang boleh dimasukan user biasa adalah 3 dan user a sudah mengupload record sebanyak 3 kali dan ada pemberitahuan "anda sudah upload jumlah maksimal data. Silahkan melakukan upgrade akun anda. sehingga dia harus upgrade ke user premium agar bisa upload record lebih dari 3. Sebelumnya terima kasih banyak atas perhatiannya.
avatar mahmudzakisyarifudin

@mahmudzakisyarifudin

1 Kontribusi 0 Poin


Jawaban

Logikanya setiap sebelum memasukkan data,
cek dulu ada berapa data yang dipunya user tersebut.
BIkin logika if > 3, redirect dengan pesan tersebut
avatar hilmanski

@hilmanski

2463 Kontribusi 2031 Poin


bikin di database user nya field khusus untuk menyimpan perubahan record yang udah di ubah sama usernya, nantinya field tsb bisa dibuat kondisi untuk cek udah berapa record yang telah diubah/ditambahkan sama user

di kode nya tinggal cek dehΒ 

$user = $userModel->find(12); // ambil data user

//cek Kondisi Records(perubahan) nya

if($user['records'] == 3) {

   //feedback nya bebas mau pake sweetalert, dll..

   echo "Mohon Upgrade Ke Premium";
}

ref: https://codeigniter4.github.io/userguide/models/model.html

Smoga membantu yaπŸ˜ƒ
avatar billiyagi

@billiyagi

15 Kontribusi 5 Poin

  • mohon maaf, itu find 12 nya apa ya ? 12 user atau 12 data, dan untuk meletakan syntaxnya dibagian controller ? - @mahmudzakisyarifudin
  • iya di controllernya, 12 itu contoh id saja,.. karena di method find itu hanya menerima 1 parameter yaitu primary key nya dari model tsb, dan biasanya untuk primary key user itu di field id - @billiyagi


Login untuk gabung berdiskusi