Membuat Login Multiuser di Yii2

Diposting pada

Yii memang keterlaluan lengkap, dengan segudang fitur yang disediakan oleh yii, membuat login multiuser di yii2 sangat-sangat mudah dilakukan. Baik itu di Yii2 basic maupun advanced. Cukup dengan berbekal pengetahuan sobat terhadap MVC, OOP, RBAC (Role Based Access Control), dan sedikit logika serta algoritma, sobat sudah bisa membuat login multiuser di yii2 hanya dalam beberapa menit saja.

Pada kasus pembuatan login multiuser di yii2 ini, saya ambil contoh dua pengguna yang berhak masuk atau login melalui halaman backend. Mereka adalah admin dan guru, selain dari itu maka ditolak. Berarti, ada tiga file yang harus kita modif, yaitu: User.php, Loginform.php, kemudian SiteController.php. Saya akan jabarkan logika, algoritma serta codenya step by step.

Baca juga:  Export MySQL Database Menggunakan PHP

Membuat Login Multiuser di Yii2

Step 1: Tentunya, agar komputer bisa membatasi hak akses bagi setiap user kita diharuskan untuk membuat tabel yang di dalamnya terdapat field role, kemudian role ini kita atur untuk setiap usernya, teruhlah user admin maka rolenya 1, user guru maka rolenya 2 dan seterusnya. Setelah kita atur masing-masing role di database, kita perlu mengaturnya juga pada file model dalam bentuk konstanta, dan mendefinisikannya pada rules.

Step 2: Pada langkah kedua kita akan membuat function yang di dalamnya berisi query SQL untuk mengambil suatu data yang memiliki role tertentu. Kita perlu mencocokkan suatu role dengan username, jika sesuai, maka bernilai true atau berikan hak akses, jika tidak, maka kita tolak atau bernilai false.

Baca juga:  Cara Memasang Iklan di Header Blog WordPress

Step 3:  Kita perlu membuat suatu model atau objek yang menjelaskan bahwa apabila si user telah menginput data berupa username dan password yang terdapat pada form login, lalu melakukan sign in, maka kita berikan perintah untuk memproses perimntaannya. Apabila bernilai false, maka tampilkan pesan kesalahan, apabila bernilai true, maka komputer akan memberikan hak akses masuk, komputer juga akan memberikan cookies bagi user jika mencentang remember me ketika login.

[php]
public function loginMurid()
{
if ($this->validate() && User::isUserMurid($this->username)) {
return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600 * 24 * 30 : 0);
} else {
$this->addError(‘password’, ‘Incorrect username or password.’);
return false;
}
}
[/php]

Step 4: Kita create model atau objek yang kita buat tadi di step 3, lalu kita gunakan pada actionLogin yang terletak pada file SiteController.php

Baca juga:  Tutorial PHP Dasar Untuk Pemula | Ebook PHP Terbaik | The Best PHP Ebook | Download Ebook PHP | Ebook Menyelam dan Menaklukkan Samudera PHP

Selesai. Saya cuma memberi tahu logika dan algoritmanya saja beserta sepotong code dengan tujuan untuk memberikan clue, bukan untuk memberikan jawaban secara detil, tapi untuk kalian melengkapinya. Silahkan bereksploarsi semaumu, tentunya agar kalian bisa melengkapi clue tadi, kalian harus paham OOP, MVC terlebih dahulu disertai dengan logika yang kuat. Semoga berhasil.

Sekian,
Semoga bermanfaat.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *