Error Handling Laravel – Selamat datang kembali di malasngoding.com. situs penyedia tutorial pemrograman terlengkap. dan teman-teman masih berada di seri belajar laravel dari dasar sampai mahir.
Sesuai dengan judul tutorial ini, Tutorial Laravel #34 : Error Handling Laravel. Kita akan belajar tentang cara penangani error pada laravel, mengatur serta mengubah atau meng-kustom tampilan error pada project laravel.
Error Handling Laravel
Laravel sudah menyediakan fitur atau konfigurasi yang bisa kita lakukan untuk menangani segala jenis error. dan penanganan error pada laravel ini akan kita bahas pengertian dan cara-caranya pada tutorial ini.
Pada saat kita sedang mengerjakan sebuah project aplikasi, jika ada kesalahan code atau error yang terjadi, tentu kita ingin error yang terjadi tersebut terlihat.
Sehingga dengan melihat pesan error tersebut kita bisa mengetahui pada bagian mana saja yang terdapat error.
Sehingga kita bisa dengan mudah menemukan bug tersebut dan memperbaikinya.
Tapi, pada saat proyek aplikasi kita sudah dideploy dan sudah online, alangkah lebih baiknya error tersebut tidak terlihat pada bagian front-end. karena pasti kita tidak ingin ada error yang terlihat ke pengguna pada saat pengguna menggunakan aplikasi yang kita buat.
Error dan Logging Laravel
Nah, laravel sudah menyediakan konfigurasi ini. konfigurasi untuk menyembunyikan dan menampilkan error. konfigurasi error pada laravel ada pada file .env.
Cari bagian APP_DEBUG, dan atur dengan true atau false. secara default pengaturannya adalah true. sehingga error yang terjadi bisa terlihat.
.env
1
APP_DEBUG=true
Jika project laravel kita sudah selesai dan sudah siap di online-kan, ada baiknya untuk mengubah pengaturan APP_DEBUG menjadi false. agar error tidak lagi terlihat ke pengguna.
Bukan berarti dengan menyembunyikan error laravel ini kita tidak bisa lagi melihat error pada aplikasi kita.
Bisa, kita bisa melihatnya pada file log yang dibuat otomatis oleh laravel. letaknya ada pada folder storage/logs.
Laravel akan membuat file-file log dan mengisinya dengan error-error atau proses yang terjadi. dan dipisahkan berdasarkan tanggal. sehingga lebih mudah kita analisa.
Kita buat contohnya ya, sekarang ubah pengaturan APP_DEBUG menjadi false. sehingga error tidak lagi terlihat. sekarang kita coba membuat error. buat route baru.
route yang kita buat ini kita perintahkan untuk mengakses method index() dalam controller MalasngodingController.php. tapi controllernya JANGAN dibuat. karena pura-puranya kita lupa membuat controller tersebut sehingga error. sekarang jalankan project.
php artisan serve
dan akses alamat
localhost:8000/malasngoding
lihat hasilnya, yang seharusnya terlihat pesan error. tapi karena kita mengatur false pada APP_DEBUG, jadinya error tidak terlihat. tapi diganti dengan halaman error 500.
Error Handling Laravel
Seharusnya muncul pemberitahuan error bahwa controller MalasngodingController dan method index() tidak ada atau belum dibuat.
Tapi karena kita mengatur APP_DEBUG nya menjadi false, sehingga error tersebut tidak terlihat diganti dengan halaman error 500 untuk menyembunyikan error tersebut.
Untuk melihat error nya pada log, silahkan teman-teman buka folder storage/logs. lihat file log dengan format tanggal hari ini.
error dan logging laravel
Seperti yang terlihat pada log, ada pemberitahuan bahwa controller MalasngodingController tidak ada.
Berikut dokumentasi error dan logging dari laravel.
Menampilkan Pesan Error Laravel
Untuk menampilkan pesan error pada laravel, kita bisa gunakan method abort(). dan isi dengan nomor error yang ingin digunakan. misalnya 404, 403,500 dan lain-lain.
404 = Error karena halaman tidak ditemukan 403 = Error karena hak akses (forbidden) 500 = Error karena ada kesalahan pada server/code
dan lain-lain.
berikut ini contoh menampilkan pesan error pada laravel.
method ini bisa teman-teman terapkan langsung pada route atau controller.
pada contoh route ini kita akan menggunakan method index() pada controller MalasngodingController.php.
Jadi data nama yang diinputkan pada url akan kita kirim ke method index() dalam controller MalasngodingController.php.
Karena kita belum punya controllernya, maka sekarang kita buat sebuah controller baru dengan nama MalasngodingController.php.
app/Http/Controllers/MalasngodingController.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
classMalasngodingControllerextendsController{
public function index($nama){
if($nama=="malasngoding"){
return abort(403,'Anda tidak punya akses karena anda Malas Ngoding');
}elseif($nama=="diki"){
return"Halo, ".$nama;
}else{
return abort(404);
}
}
}
Oke, pada method index(), kita tangkap data nama yang diinput pada url, kemudian kita cek jika namanya “malasngoding”, maka kita tampilkan halaman error 403, dengan pesan “Anda tidak punya akses karena anda Malas Ngoding”.
Jika namanya adalah “diki”, maka kita return atau kembalikan nilai nama tersebut. jika semua kondisi tidak terpenuhi maka kita tampilkan halaman error 404.
Seperti yang sudah saya jelaskan sebelumnya, untuk menampilkan halaman error di laravel, kita bisa menggunakan method atau fungsi abort(). dan kita isi nomor error nya yang kita inginkan. misalnya 404, 403, 500 dan lain-lain.
Parameter kedua hanya opsional, artinya boleh diisi boleh tidak. jika parameter kedua nya kita isi, maka pesan error yang ditampilkan pada halaman error adalah pesan yang kita buat.
jika tidak maka pesan error yang ditampilkan adalah pesan error bawaan pada halaman error laravel. pada contoh di atas sudah saya contohkan kedua model penulisan abort().
Kita lihat hasilnya. akses localhost:8000/malasngoding/malasngoding.
menampilkan halaman 403 forbidden laravel
Sekarang coba akses localhost:8000/malasngoding/diki.
menampilkan halaman error laravel
seperti yang terlihat pada gambar di atas, karena yang kita input adalah “diki”, maka nilai $namanya ditampilkan. dan coba jika kita akses localhost:8000/malasngoding/solehun.
menampilkan halaman 404 laravel
Maka akan muncul halaman error 404.
Mengubah Tampilan Error Laravel
Kita juga bisa mengubah tampilan dari halaman error laravel. caranya ketik perintah artisan berikut.
1
php artisan vendor:publish--tag=laravel-errors
setelah mengetik perintah artisan di atas, maka laravel akan membuat folder errors dalam folder views. dalam folder errors ini terdapat file-file view halaman error laravel yang bisa langsung teman-teman ubah sesuai dengan keinginan.
mengubah tampilan halaman error laravel
Oke sekian dulu tutorial laravel tentang pengolahan error pada laravel (Error Handling Laravel) ini. semoga bisa mudah dipahami oleh teman-teman pembaca di malasngoding.com.
Coding enthusiast.
Someone who love learn something new. especially about web programming and web design. happy to share about knowledge and learn from other.
Action URL Laravel – Action URL adalah sebuah fitur pada laravel untuk tujuan generate URL ke controller, dan juga bisa mengirimkan data parameter seperti pada ...
Multi Bahasa Localization Laravel – Multi bahasa merupakan fitur pada website untuk menampilkan informasi dalam berbagai bahasa. Laravel telah menyediakan fitur multi bahasa. sehingga untuk ...
Import Excel Laravel – Setelah sebelumnya kita belajar tentang membuat export atau cetak laporan excel pada laravel, seperti ada yang kurang jika kita tidak membahas ...
Export Excel Laravel – Fitur export atau cetak laporan excel merupakan salah satu fitur yang paling penting. bagi teman-teman yang sering membuat aplikasi pesanan dari ...
Download Ebook belajar HTML & CSS dasar untuk pemula gratis.
Ebook ini bisa di download oleh teman-teman yang baru mulai belajar HTML dan CSS dasar tapi tidak tahu mau memulai belajar dari mana.
materi pembelajaran sudah di susun secara sistematis dan di dukung contoh gambar.