Membuat Level Akses User di Laravel 5.5

Hallo sahabat ONPHPID, pada kesempatan ini kita akan belajar Membuat Level Akses User di Laravel 5.5 dengan kata lain Tutorial Membuat MultiAuth Login pada Laravel 5.5. Kita akan membuat secara sederhana, nantinya teman-teman bisa ngembangin sesuai kebutuhan Aplikasi yang dibuat. Pada Tutorial ini tidak akan dibahas secara detail basic dari Laravel itu sendiri. Jika teman-teman baru dalam Belajar Laravel, teman-teman bisa membaca artikel sebelumnya yaitu Belajar Laravel : Berkenalan dengan Laravel 5.3 untuk Pemula.

Dengan asumsi kita sudah menginstall project laravel, saya jelaskan secara singkat apa yang akan dibuat pada tutorial ini. Jadi kita akan Membuat Level Akses User di Laravel 5.5 , setiap user yang register defaultnya tidak memiliki Role, atau level akses user. Maka setelah register di redirect ke page home, di halaman ini ada button untuk upgrade. Misal saja aplikasi kita menyediakan fitur upgrade level user agar mendapatkan lebih dari user biasa. Tentunya button akan muncul jika user telah memenuhi yang di syaratkan. User yang sudah melakukan upgrade akan di bawa ke page khusus Member. Sedangkan Admin dapat melihat semua User yang belum upgrade level. Idenya sendiri seperti itu.

Pertama kita buat Model UserRole dan Role beserta migrations baru dengan cara menjalankan perintah, tapi sebelumnya kita jalanin php artisan make:auth untuk memakai authentikasi bawaan Laravel.

php artisan make:model Role -m

dan

php artisan make:model UserRole -m

Role.php

UserRole.php

2017_09_18_130600_create_roles_table.php

2017_09_18_125450_create_user_roles_table.php

Lalu kita melakukan sedikit perubahan pada Model User, dengan kata lain kita membuat method yang akan menangani proses upgrade user. Seperti di bawah ini:

User.php

Kita buat middleware dengan nama RoleMiddleware tujuannya untuk menghandle user, apakah user yang sedang login memiliki role atau tidak, dan untuk mengecek apakah user sebagai admin atau member. Caranya ketikan perintah di bawah ini pada command promt.

php artisan make:middleware RoleMiddleware

RoleMiddleware.php

dengan middleware di atas, user yang belum upgrade tidak dapat mengakses halaman member, dan member tidak dapat mengakses halaman admin. Daftarkan dulu middlewarenya di file kernel.php, lihat contoh di bawah:

Kita buat dulu database kemudian migrate. Jika belum paham caranya bisa membaca artikel ini. Jangan lupa mengisi table roles dengan data seperti gambar di bawah ini:

tabel roles

buat satu user dengan cara register, kemudian kita beri hak akses sebagai admin dengan cara langsung mengisi tabel role_user seperti di bawah ini:

tabel user roles

Kita buat Routing baru di file web.php

web.php

pada file app.blade.php yang berada di views/layouts/ tambahkan code di bawah ini tepat di atas penutup body, jadi seperti ini:

lalu,buat 2 file baru di views masing-masing dengan nama member.blade.php dan admin.blade.php

member.blade.php

admin.blade.php

kemudian file home.blade.php kita ubah menjadi seperti di bawah ini:

home.blade.php

sekarang kita coba register user baru, maka akan di redirect ke page home, seperti gambar di bawah ini:

page home

Home Page

pada gambar di atas, terdapat button upgrade, bila kita klik maka akan mengirim data melalui ajax dan jika berhasil akan di redirect ke page member seperti gambar di bawah ini:

page member

Member Page

dan tabel role_user bertambah datanya, yang menyatakan bahwa user telah memiliki role.

new tabel roles

sedangkan jika user login sebagai admin, maka akan masuk ke page admin dan dapat melihat semua user yang belum upgrade. lihat gambar di bawah:

Admin Page Laravel

Admin Page

NOTE :

Jangan lupa merubah property protected $redirectTo = '/home'; pada file LoginController.php menjadi protected $redirectTo = '/admin';

Ok, teman-teman…

Saya rasa sudah terlalu panjang artikel ini, semoga bermanfaat ya.

Baca Juga : Cara Menggunakan Composer di Project PHP

Cek videonya di bawah ini :

Sekian dulu tutorial Membuat Level Akses User di Laravel 5.5. Jika ada hal yang kurang jelas atau ingin ditanyakan dapat melalui komentar. JANGAN LUPA like FANSPAGE ONPHPID untuk update informasi dan Subscribe Channel ONPHPID Tutorial. Selamat Belajar…

Tutorial Menarik Lainnya

Adblocker Detected : Dukung ONPHPID dengan menonaktifkan Adblock-mu (^_^) Terima Kasih.