Warning: Cannot modify header information

PHP kullanan arkadaşlar bilirler PHP’nin “Warning: Cannot modify header information” şeklinde bir uyarı mesajı vardır ki programcıya saç baş yoldurur adeta…

www.kahkaha.com ‘da çalıştığım dönemlerde yoğun olarak PHP kullanıyordum ve orada çalışırken de bu hata yüzünden çok tırnak yedim, çok saç döktüm 🙂 Şimdi bizim derneğin sitesi (www.karsipinarkoyu.com) vesilesi ile yeniden PHP’ye bulaşmam gerekti, bulaştım da ve yine bu saç baş yolduran problem karşıma çıktı. Başka arkadaşlar da saç baş yolmasınlar diye bu yazıyı yazıyorum zaten. Benim bu problemi çözerken izlediğim adımlar umarım diğer arkadaşların da işlerine yarar…

  • .htaccess dosyasına php_flag output_buffering on seçeneğinin eklenmesi
    Ben denedim hiçbir işe yaramadı. Dışarıda bi dolu internet sitesi var bunu yapın probleminiz çözülecek diye. İnanmayın arkadaşlar, denedim ve onayladım. Bi b*ka yaramıyor bu seçenek…
  • PHP kodlarında kullanılan dosya formatı ile encoding’in farklı olması
    Bu seçeneği de denedim, çalışmadı. Misal dosya kodlaması UTF-8 ama sizin fiziksel dosyanız disk üzerinde ANSI olarak kayıtlı duruyor. Elemanlar diyorlar ki kodlama ile dosya kayıt formatı aynı olmalı. Kodlama UTF-8 ise, kayıt formatı da UTF-8 olmalı. Çok detaylı incelemedim bu sseçeneği açıkçası. Belki sizde çalışabilir ama bende herhangi bir etkisi olmadı.

  • PHP dosyalarının farklı editörler ile yeniden düzenlenmesi
    Şimdi efendim bu seçenek aslın “farklı editörler” değil de “skindirik editörler” olmalı aslında. Bazı editörler hakkaten skindirik oluyorlar çünkü (bkz. Microsoft Visual Studio Editor). Bu sorunun (Warning: Cannot modify header information) temel kaynağı bu aslında arkadaşlar. Yani bir php kodu başlangıç etiketinden (<?php) önce ya da kapanış etiketinden (?>) sonra boşlukların, yeni satırların veya söz dizimini bozan başka karakterlerin kullanılıyor olması. Bazen bu karakterleri (gereksiz) biz bilerek yerleştiriyorz PHP kodlarına bazen ve sıkça da yukarıda sözünü ettiğim skindirik editörler kendileri ekliyorlar bu karakterleri koda. Siz tabi durumdan bihabersiniz. Bu hatayı alınca da çok afedersiniz g*t gibi kalıyosunuz, kalıyoruz, ben de kaldım çünkü, ortada…

Sonuç olarak arkadaşlar yukarıdaki uyarı mesajını alan arkadaşlara yegane tavsiyem. Orjinal kodlarını yeniden değiştirdikleri kodların üzerine yazmaları. Bunun için de günlük yedeklerinizi vs. çok iyi yapıyor olmanız gerekiyor. Aman dikkat diyorum…

No comments yet.

Bir cevap yazın

Font Resize