LARAVEL AUTH, CRUD Multi Level User
Publised: Kamis, 5 Juni 2025 | Author: Sherly Ananda Putri - 2311532017
Pada praktikum ini, saya akan melanjutkan project dari minggu sebelumnya tentang pengembangan project laravel. Tujuan dari Pembelajaran yaitu mahasiswa mampu installasi Laravel, membuat project baru Laravel,
mengenal struktur Laravel, konsep MVC laravel.
Tools yang saya gunakan:
- Komputer/Laptop
- XAMPP: Sebagai local web server untuk menjalankan PHP dan MySQL di komputer lokal.
- Visual Studio Code: Sebagai code editor untuk menulis skrip PHP dan HTML.
- Composer, Git, Node JS, NPM: Untuk manajemen paket dan dependensi.
Fitur-fitur pada Laravel
1. Eloquent ORM (Object-Relational Mapping):
Memudahkan operasi database dengan pendekatan OOP.
2. Blade Templating Engine:
Templating engine yang efisien dan bersih.
3. Artisan Console:
Command-line interface (CLI) yang disertakan dengan Laravel.
4. Routing:
Sistem perutean yang fleksibel memungkinkan untuk mendefinisikan URL aplikasi dan mengaitkannya dengan controller atau closure functions.
5. Middleware:
Digunakan untuk autentikasi, logging, validasi, dan tugas-tugas lain sebelum atau sesudah request ditangani oleh aplikasi.
6. Form Request Validation:
Memudahkan proses validasi data yang dikirim melalui form.
7. Security:
Fitur keamanan laravel.
8. Authentication & Authorization:
Menyediakan sistem otentikasi (login, registrasi, lupa kata sandi) dan otorisasi (hak akses pengguna) yang mudah diimplementasikan.
9. Testing:
Dukungan bawaan untuk berbagai jenis pengujian, termasuk unit testing, integration testing, dan end-to-end testing.
10. Queues:
Sistem antrian yang memungkinkan untuk menunda tugas-tugas yang memakan waktu
11. Caching:
Mendukung berbagai sistem caching (seperti Redis, Memcached, file) untuk meningkatkan performa aplikasi dengan menyimpan data yang sering diakses dalam memori.
12. Events & Listeners:
Implementasi dari pola Observer.
13. Notifications:
Memudahkan pengiriman notifikasi ke berbagai saluran, seperti email, SMS, database, atau layanan pihak ketiga.
14. Broadcasting:
Memungkinkan melakukan siaran event secara real-time melalui WebSockets.
15. Task Scheduling:
Memungkinkan menjadwalkan tugas-tugas cron menggunakan sintaks yang ekspresif dalam kode PHP.
16. Passport (OAuth2 Server):
Paket resmi untuk mengimplementasikan otentikasi OAuth2.
17. Sanctum (API Authentication):
Paket ringan untuk mengimplementasikan sistem otentikasi berbasis token untuk Single-Page Applications (SPAs), mobile applications, dan simple APIs.
18. Socialite (Social Authentication):
Memudahkan integrasi otentikasi dengan berbagai penyedia layanan OAuth seperti Facebook, Twitter, Google, dan lainnya.
19. Filesystem:
Abstraksi untuk berinteraksi dengan berbagai sistem penyimpanan file, baik lokal maupun cloud (seperti Amazon S3 atau Google Cloud Storage).
20. Mail:
Memudahkan pengiriman email dengan dukungan untuk berbagai driver seperti SMTP, Mailgun, dan Amazon SES.
21. Pusher (Realtime Services):
Untuk menambahkanfitur realtime ke aplikasi.
22. Localization: (Realtime Services):
Memudahkan pembuatan aplikasi multibahasa dengan fitur untuk mengelola terjemahan.
23. Packages:
Memungkinkan dengan mudah menambahkan fungsionalitas tambahan ke aplikasi.
Langkah-langkah:
MANAGEMEN USERS
Untuk membuat fitur
managemen users kita perlu menggunakan seluruh fungsi CRUD degan membuat
controller resource.
Caranya dengan mengetikkan perintah berikut pada terminal/CMD:
php artisan make:controller UserController --resource
Selanjutnya menambahkan kode
use App\Http\Controllers\UserController; dan
Route::resource('users', UserController::class);
pada file
routes/web.php di proyek laravel-sisfo.
Selanjutnya jika kita lihat pada terminal dengan memasukkan perintah
php artisan route:list maka akan tampil:
1. File UserController Resource:
Masukkan kode berikut pada file
UserController.php :
2. Membuat Form Create Users:
Tambahkan method create() untuk menampilkan form create dan tambahkan plugin Select2 untuk dropdown level user.
- Menampilkan view create pada folder user
Untuk menampilkan view create pada folder user, buka file
UserController
kemudian pada action create edit kode program menjadi seperti berikut.
- Tambahkan file
Create.blade.php
Buat folder user dan folder view, kemudian buat file Create.blade.php
- Tambahkan file css dan javascript :
Masukkan file css dan javascript ke dalam
main.blade.php
- Membuat Form Inputan Create User:
Edit file
create.blade.php menjadi:
- Tampilan Create User:
3. Tampilkan Data User:
Gunakan method index() dan view
index.blade.php untuk menampilkan semua user menggunakan DataTables.
4. Update Data User:
Buat tombol edit pada daftar user yang mengarahkan ke method
edit() dan menampilkan form untuk update data.
Gunakan method update() untuk menyimpan perubahan data user ke database.

Tampilan edit:
5. Hapus User:
Tambahkan method destroy() untuk menghapus data user dari database.
Pop up peringatan saat tombol hapus di klik:
Jika ditekan oke maka data user akan terhapus:
6. Menambahkan Menu User:
Tambahkan link ke halaman user di file sidebar.blade.php agar bisa diakses dari navigasi.
Sehingga pada tampilan sidebar akan bertambah menu user:
Demikian Laporan 4 Praktikum Pemograman Web pertemuan 9 ini. Semoga Bermanfaat.