Pengantar
Halo sobat Jagoan!
di tutorial kali ini kita bakalan membahas permasalahan Error Undefined Index/Variable. Pasti sekarang kamu lagi main-main sama bahasa pemrograman PHP kan?
Nah di PHP itu ada dua jenis method yaitu $_POST dan $_GET. Kedua method ini biasanya digunakan untuk mendapatkan value dari user melalui sebuah form. Ketika pakai method ini biasanya muncul deh error bernama Notice: Undefined Index
Error Undefined Index Itu Apa Ya?
ExpandUndefined Index istilahnya adalah sebuah “notice” atau pemberitahuan (termasuk level yang ringan jika dibanding Warning), jenisnya seperti ini :
“Notice: Undefined variable“.
“Notice: Undefined index” dan “Notice: Undefined offset“.
Nah karena skala levelnya masih ringan, maka ada dua cara untuk mengatasi notice tersebut, yakni abaikan atau perbaiki noticenya
Apa Aja Penyebabnya?
Expand- Pada beberapa server pengambilan $_GET secara langsung jika valuenya kosong dapat menimbulkan error.
- Karena nama variabel yang kita sebutkan pada baris yang muncul saat error tidak dikenal.
Cara Mengabaikan Notice Undefined Index
Kamu bisa mengabaikan informasi ini dengan menggunakan fitur error_reporting. Ide besarnya adalah menyetting error_reporting menjadi E_ALL & ~E_NOTICE.
1. Lewat php.ini
Kalo kamu beli hosting di JagoanHosting kamu bisa mengubah error_reporting menjadi E_ALL & ~E_NOTICE dengan menggunakan panduan mengubah konfigurasi PHP
Cara lain adalah edit file php.ini di hosting kamu, cari “error_reporting” defaultnya biasanya E_ALL nah itu diganti jadi E_ALL & ~E_NOTICE.
Contoh default :
error_reporting = E_ALLGanti ke:
error_reporting = E_ALL & ~E_NOTICESekarang yang tampil adalah semua error kecuali level “Notice“.
2. Coding PHP
Kalau kamu gak ada akses ke php.ini, kamu tetep bisa mengabaikan error tersebut dengan menambahkan baris kode kedalam sebuah page php tersebut.
<?php error_reporting (E_ALL ^ E_NOTICE);?>Sekarang yang tampil adalah semua error kecuali level “Notice“.
Cara Memperbaiki Undefined Index
Jenis error ini muncul di method $ _POST dan $ _GET, ketika kamu pakai index atau variabel yang belum diset dikedua method tadi, tapi kamu udah pakai valuenya di kode PHPmu.
Contoh:
Di contoh ini kita pakai dua variabel “nama” dan “umur” tapi yang di masukkan cuma value “nama” melalui method $_GET, itu kenapa akhirnya muncul error
http://namadomain.com/index.php?nama=rama
<?php $nama = $_GET[‘nama’]; $umur = $_GET[‘umur’]; echo $nama; echo $umur; ?>Output :
Notice: Undefined index: umur index.php on line 5Solusi :
Untuk mengatasi error tersebut kamu bisa menggunakan fungsi isset() , ini contohnya berdasarkan contoh error baris kode diatas.
http://namadomain.com/index.php?nama=rama
<?php if(isset($_GET[‘nama’])){ $nama = $_GET[‘nama’]; }else{ $nama = “Nama tidak diset di Method GET”; } if(isset($_GET[‘umur’])){ $umur = $_GET[‘umur’]; }else{ $umur = “<br>Umur tidak diset di Method GET “; } echo $nama; echo $umur; ?>Output :
rama Umur tidak diset di Method GET
Setting Blank Index
Pendekatan lain dengan sengaja setting dengan blank index, contohnya seperti ini:
// contoh menggunakan $_POST $name = isset($_POST[‘nama’]) ? $_POST[‘nama’] : ”; $name = isset($_POST[‘umur’]) ? $_POST[‘umur’] : ”; // contoh menggunakan $_GET $name = isset($_GET[‘nama’]) ? $_GET[‘nama’] : ”; $name = isset($_GET[‘umur’]) ? $_GET[‘umur’] : ”;
Cara Memperbaiki Undefined Variable
Pemberitahuan atau notice ini muncul ketika kamu pakai variabel di PHP tapi belum kamu set valuenya.
Contoh :
<?php $name=’RAMA’; echo $nama; echo $umur; ?>Output :
Notice: Undefined variable: umur in namadomain.comindex.php on line 7Contoh diatas kita menampilkan value yang disimpan di ‘nama’ dan ‘umur’ tapi kita belum set isi variabel ‘umur’ nya.
Solusi :
Untuk mengatasi error ini, kamu bisa definisikan variabel global dan gunakan fungsi isset() untuk ngecek sudah diset valuenya atau belum.
<?php global $nama; global $umur; echo $nama; ?> <?php if(isset($nama)){echo $nama;} if(isset($umur)){echo $umur;} ?> <?php // Set Blank Variabel $nama = isset($nama) ? $nama : ”; $umur= isset($umur) ? $umur: ”; ?>Penutup
Nah, itu dia beberapa solusi dari Jagoan Hosting Indonesia dalam mengatasi Error Undifined Index / Variable. Simak terus tutorial yang lain di halaman Tips Hosting di halaman tutorial Jagoan Hosting Indonesia, kasih star buat feedbacknya.
Sampai bertemu di tutorial berikutnya!
Referensi : https://www.stechies.com/undefined-index-error-php/