Get Adobe Flash player

“Notice: Undefined index” uyarısı için basit bir çözüm

Bu uyarı tanımlanmamış bir değişkene ulaşmaya çalıştığınız zaman size bilgi vermek için PHP’nin size döndürdüğü bir mesaj veya log dosyasında gördüğünüz bir uyarıdır. Kodunuzun başına error_reporting(E_ALL ^ E_NOTICE); satırını eklediğinizde bu mesajlardan kurtulabilirsiniz. Ama bu uyarıları kapatmak yerine çözmeye çalışmak ileride gerekli olan mesajları engellemeden çözüm sağlamak için daha iyi bir çözüm olur.

Bunun için genelde isset komutu ile değişkenin tanımlı olup olmadığı kontrol edilir. Böylece değişken tanımlı değilse o değişkenden veri çekilmeye çalışmaz.
if (!isset($degisken)) {} şeklinde bir kontrol ile her değişkenin kullanılmadan önce kontrol edilmesi, değişken tanımlanmadan işlem yapılmasını engelleyebilir.

Bir fonksiyon ile bu işi daha profesyonel çözemeye çalışalım.

<?php
    function kontrol(&$degisken)
    {
        if(isset($degisken) && !empty($degisken))
            return true;
            
        return false;
    }
    
    $_GET['a'] = kontrol($_GET['a']) ? $_GET['a'] : FALSE;
    
    echo $_GET['a'];
?>

 

Share

Leave a Reply