Merhaba arkadaşlar
yeni tasarladıgım sitem için dil secenegi ekledim ve eger dil secilirse bunuda session ile hafızada tutuyorum..

dil.php dosyam şu şekilde

<?php
session_start();

// oturuma gore dil seciyoruz
$secili_dil = $_SESSION["dil"];

// eger dil oturumda secili degilse
if( empty($secili_dil) ){
  // dili browser ayarina gore otomatik sectiriyoruz.
  $secili_dil = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
  if( !file_exists("diller/".$secili_dil.".php") ){
    // eger o dile ait ceviri dosyasi yoksa site icin varsayilan dili sectirelim.
    // bizim site icin turkce olsun
    $secili_dil = 'tr';
  }
}

// oturuma kaydedelim
  $_SESSION["dil"]=$secili_dil;

// simdide ceviri dosyasini yukleyelim
include("diller/".$secili_dil.".php");
?>
Bu dil.php dosyasını index.php de tüm kodların üstünde include olarak çağırmışım

Şimdi sorunum şudur;
Dosyalar oluşturulurken set ANSI olarak seçilmişse ve kodlarda
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-9">
ile set belirtilmişse herşey sorunsuz çalışıyor...

Fakat benim işlemlerime göre herşeyin UTF-8 olması gerekiyor
dosyaları oluştururken (notdefteri ile yaptım) seti UTF-8 yapıyorum
ve kodlarda ise
<META http-equiv="Content-Type" content="text/html; charset=utf-8"> olarak belirtiyorum
böyle yapınca session_start hata veriyor.

Hata şudur:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\AppServ\www\ysite\index.php:1) in D:\AppServ\www\ysite\dil.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\AppServ\www\ysite\index.php:1) in D:\AppServ\www\ysite\dil.php on line 2
 

Neden iso'da sorunsuz çalışırken UTF-8 yapınca hata alıyorum
konu hakkında bilgisi olan arkadaşlar tecrubelerini yazarsa çok sevinirim..

Baya zamandır arıştırıyorum ama çözüm bulamadım
ob_start ekle dediler olmadı
utf-8 BOM olmaması lazım dediler Notepad++ indirip bomsuz yaptım yine olmadı