Codeigniter Undefined index: iNFO hatası ve Çözümü

CodeIgniter çok yetenekli bir PHP framework'ü. Şimdi anlatacağım hatayı İnternet'te bayağı aradım ama bulamadım. Birkaç froumda farklı çözümler önerilmiş, denedim ama olmadı.

Codeigniter'da proje çalıştırdığınız zaman  core/Log.php dosyasında 180. satırda bir hata alacaksınız. Çözümü gayet basit. Bu hatanın nedeni "info" kelimesinin büyük harfe çevrildiğinde iNFO olarak çevrilmesinden kaynaklanıyor.

Zaten Türkçe'de büyük harf İ vardır, İngilizce'de büyük İ yoktur sadece küçük i vardır. Küçük i harrfini de büyük harfe çevirdiğiniz zaman I olması gerekir. 

Bunun çözümü için CodeIgniter'da system/core/Log.php dosyasını açınız. 180. satırın hemen üstünde aşağıdaki gibi bit strlower() fonksiyonunun kullanıldığı satır göreceksiniz. Sıkı durun bu fonksiyonu mb_strlower() olarak değiştirin. Sonra projenizi çalıştırın, doğru şekilde çevirme işlemini yaptığından bir sorun yaşamayacaksınız.

$level = strtoupper($level);

satırı aşağıdaki gibi değiştiriniz.

$level = mb_strtoupper($level);






Bu arada kullandığım işletim sistemi Ubuntu Linux 18.04. Bu işletim sisteminde işlemlerin düzgün yapılması için okuma, yazma, çalıştırma haklarının da tam verilmesi gerekmektedir. htdocs klasörü altında açtığınız proje dizininiz için 777 (klasör sahibi, grubu ve diğerleri için tüm haklar) hakkını veriniz. Aşağıdaki chmod komutunu kullanabilirsiniz.

$ sudo chmod 777 codeigniter_klasörü



Mutlu kodlamalar,
Oğuzhan TAŞ
Ocak 2020

Bookmark and Share