
ÖZET:
1. Dil paketimde bir sorun yoktu. "phpbb_**********.226.lang_turkish" dil paketini indirdim. Kurulumdan önce forumun klasöründeki tüm dosyaları açıp kontrol ettim.
Bazı dosyalarda iso-8859-9 ifadesi yerine iso-8859-1 ifadesinin kullanıldığını gördüm. Sonuç olarak iso-8859-9 ifadesinin yerleştirilebileceği ve benim de yerleştirdiğim/olduğu gibi bıraktığım dosyalar aşağıdaki gibidir:
admin / page_header_admin.php
cache / index.htm
db/ index.htm
images / index.htm
images / avatars / index.htm
images / avatars / gallery / index.htm
includes / functions.php – sayfanın başında değil, fakat kodun ilerleyen kısımlarında saklanıyor
includes / index.htm
includes / page_header.php
language / index.htm
language / lang_turkish / index.html
language / lang_turkish / lang_main.php
templates / subSilver / index.html
templates / index.htm
templates / subSilver / overall_header.tpl
templates / subSilver / simple_header.tpl
templates / subSilver / admin / index.htm
templates / subSilver / admin / index_frameset.tpl
templates / subSilver / admin / page_header.tpl
templates / subSilver / images / index.htm
templates / subSilver / images / lang_turkish/ index.html
language / lang_turkish / email / klasöründeki tüm dosyalar
Bu uzun çalışmanın ardından sorunum yine çözülmedi.
Fakat ne zaman ki lang_main.php dosyasındaki 8859-9 ifadesini 8859-1 olarak değiştirdim “݆harfleri normal göründü, bu sefer sayfanın diğer yerlerindeki karakterler (örneğin forumdaki “toplam misafir sayısı†gibi bir metindeki karakterler) bozuk göründü.
Fakat bu sefer, bazı forum dosyalarında (overall_header.tpl gibi) bulunan {S_CONTENT_ENCODING} ifadesini "iso-8859-9" ile değiştirdiğimde; yani Internet Explorer gibi programların dili otomatik olarak seçmesini değil de, özellikle “iso-8859-9" ayarını kullanmasını sağladığımda; veya Internet Explorer programının “görünüm / dil kodlaması†ayarından Türkçe’yi seçtiğimde problem çözüldü.
Fakat bu şekilde ileride veritabanın yedeğini alırken vb. işlemlerde sorunun çıkabileceğini öğrendim. Yani sorunuma henüz çözüm bulamamıştım.
Bu arada neden 8859-1 dil setinde “熓şâ€ gibi harfler görünürken “İâ€, “Іgibi harfler görünmüyor? Çünkü iso-8859-1 dil seti “ç†ve “şâ€ gibi harfleri okuyabiliyor. Bu harfler 8859-1’nin desteklediği diğer dillerde de var. Ama Türkçe’ye özgü diğer harfler (“݆gibi) 8859-1 tarafından desteklenmiyor. Problemin yaşanmaması için 8859-9’u kullanmak gerekiyor.
2. Foruma yazdığım başlıklar ve yeni açtığım konular veritabanında saklanıyor. Veritabanında veya veritabanı ile olan bağlantıda sorun varsa doğal olarak karakterler bozuk görünüyor.
Veritabanın idare edildiği kontrol panelinden veritabanın dil kodlamasını kontrol ettim. Türkçe karakterlerin sorunsuz gözükmesi için "iso 8859-9"a tekabül eden "latin5" karakter setinin kullanılması gerekiyor. Veritabanın nasıl kontrol edildiğini bilmiyorsanız hosting firması ile görüşmenizi tavsiye ederim. Benim veritabanım latin5 karakter setine ayarlıydı, ama problem devam ediyordu.
Hosting firmasıyla yaptığım sözlü görüşmede sunucumun Türkçe dilini ve phpBB'yi desteklediğini öğrendim. Bu kadar uğraşmama rağmen soruna çözüm bulamayınca hosting firmasıyla yazıştım. Bunun üzerine, sadece sunucu sahipleri (hosting firması) tarafından değiştirilebilen php.ini (bu dosyanın bilgisayardaki konumunu/adresini bilmiyorum, bilen varsa paylaşsın) ve httpd.conf (c:\Program Files\Apache Group\Apache2\conf\httpd.conf) dosyalarının içindeki ISO-8859-1 ifadesini ISO-8859-9 ile değiştirdiler.
Okuduğum kadarıyla "httpd.conf" dosyasındaki "AddDefaultCharset ISO-8859-1" satırının "AddDefaultCharset ISO-8859-9" satırı ile değişmesi gerekiyor.
Sorunum devam etti.
3. Son olarak, sorunun veritabanından kaynaklandığını düşündüğümden bir yerde bulduğum şu kodu denedim:
“includes/db.php
// Make the database connection.
$db = @new sql_db($dbhost, $dbuser, $dbpasswd, $dbname, false);
mysql_query("SET NAMES 'latin5'");
mysql_query("SET CHARACTER SET latin5");
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
Sorunum çözüldü.
İlginiz için teşekkür ederim. Kolay gelsin.