Tips Mengatasi Error Undefined Index / Variable

Admin Tutorial

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

Cara Mengabaikan Notice Undefined Index

Kamu bisa mengabaikan informasi ini dengan menggunakan fitur error_reportingIde 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_ALL

Ganti ke:

error_reporting = E_ALL & ~E_NOTICE

Sekarang 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 5

Solusi :

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.com\index.php on line 7

Contoh 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/

Apakah artikel ini membantu, Sob?

Berikan rating buat artikel ini!

Rata-rata rating 3.3 / 5. Dari total vote 17

Pertamax, Sob! Jadilah pertama yang memberi vote artikel ini!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Leave a Comment