Türkçe karakter problemi konusuna devam ediyoruz.. Moodle veya drupal kurdunuz, Türkçe dil dosyalarını yüklediniz.. Herşey güzel çalıştı. Fakat Türkçe karakter içeren bir yazı eklediğinizde karakterler bozuk gözüktü…
Bu problem genelde MySQL veritabanında bulunan tabloların kullandığı karakter setlerinin Türkçe karakteri desteklememesinden dolayı oluşur. Veritabanındaki her tablonun karakter setini Türkçe karakter desteği bulunan bir sete (Örneğin : utf8) çevirmek bu problemi çözüyor..
Moodle, drupal gibi sistemlerde tablo sayısı çok fazla olduğundan her tabloyu tek tek düzenlemek zor.. Bu işlemi bir php kodu yardımı ile otomatik olarak yapabiliyoruz.. Bu kod veritabanındaki tüm tablo ve alanların karakter setlerini utf8′e çeviriyor ve Türkçe karakter problemini çözüyor.. Yapmanız gereken şey kodu indirip mysql user,pass,db ayarlarını yaptıktan sonra kodu servera yollayıp çalıştırmak..
Bu kodu kullanarak Drupal ve Moodle daki Türkçe karakter problemini çözdüm. Ancak moodle’da bu kodu çalıştırınca kullanıcı girişi yapılamıyor.. Bu yüzden bir kod ekleyerek adında mdl_user geçen tabloların karakter setini değiştirmedim ve sorun kalmadı..
Drupal içinse cache ile alakalı tabloları utf8e çevirmede problem yaşadım o yüzden drupalda içinde cache kelimesi geçen tabloların karakter setine dokundurmadım.
Sonuç olarak elimde iki adet mysql veritabanı karakter kodlaması çevirme kodu var;
Drupal için tüm veritabanını utf8 karakter kodlamasına çevirme dosyası
Moodle için tüm veritabanını utf8 karakter kodlamasına çevirme dosyası
Başka sistemler için de birkaç değişiklik ile bu kodu kullanabilirsiniz..
drupal, moodle, MySQL, türkçe karakter problemi, utf8
Yazacağım tüm yazıları RSS beslemesi ile takip edebilirsiniz
E-posta abonesi olarak yazacağım yazıların e-posta adresinize otomatik olarak gelmesini sağlayabilirsiniz.
Yazıyı başkalarıyla paylaşabilirsiniz;
Arşiv sayfasından tüm yazılarımı görebilirsiniz.
Yazıya yorum yapabilir, yapılan yorumları RSS 2.0 beslemesiyle takip edebilirsiniz veya sitenizden geri izleme yapabilirsiniz.
Web teknolojilerini takip etmeyi çok seven, genellikle en sevdiği programlama dili olan php ve onun kankası MySQL hakkında yazılar yazan, internet sitelerinde neXus veya nXs olarak tanınan Hüseyin Berberoğlu adlı kişinin web günlüğündesiniz… ayrıntı..
sadri
Ocak 18th, 2008 at 17:23
merhaba, aranırken buldum burayı. drupal de Türkçe karakter sorunu yaşıyorum ve bir türlü gideremedim. drupal_cevir .php dosyasını ana dizine atıp çalıştırdığımda şu hatayı verdi:
SQL Error:
Column ‘Content’ cannot be part of FULLTEXT index
kırmızı harflerle:)
Hüseyin Berberoğlu
Ocak 18th, 2008 at 19:55
O hata ile daha önce karşılaşmadım fakat phpmyadmin’e girip Content alanının bulunduğu tabloya girin alt kısımda Indeksler diye bir bölüm var oradan Content’i kaldırın daha sonra drupal_cevir’i çalıştırın.
sadri
Ocak 18th, 2008 at 20:57
tabloların çoğunu kontrol ettim. drupal kurulmu yapılırken dosyalar zaten utf-8 formatında. gelen eklentilerden olabilir diye düşünüyorum. drupalle ilgili fazla bir türkçe destek olmadığından sorunu kendimiz bir şekilde çözmeye çalışyoruz. Acaba server ayarlarında falan mı bir sorun var diye düşünmüyor değilim. Host’umun başına diyorum: tabloları sıra ile çeviriyor yazdığınız kodlar ve sıradaki tabloda content diye bir index bulamadım.
Kemal Can
Mart 29th, 2008 at 02:12
Çözülmüyor… ya da çözemedim
Kemal Can
Nisan 4th, 2008 at 00:58
Arkadaşlar bende aynı şekilde sorun çekiyorum. Bu sorunun kalıcı bir çözümünü bilip te söylemeyen varsa sitesi çöksün yahu…
Hüseyin Berberoğlu
Nisan 11th, 2008 at 10:42
arkadaşlar, dosyaların linki yanlıştı, düzelltim. sisteminize uygun dosyayı indirip, sitenize yükleyin ve dosyayı çalıştırın. dosya çalıştığında tüm veritabanınız utf8′e dönüşecek. ve bu işlemi yaptıktan sonra yazdığınız yazılar Türkçe destekli olacak..
önceki yazılar için bir şey yapılamıyor
Kemal Can
Haziran 9th, 2008 at 19:04
Sonunda hallettim…. moodle ı fantastico yerine, moodle.org da yayınlanan türkçe moodlı indirdim, ftp ile atıp, kurdum simdi masallah sorunsuz