Merhaba sevgili MD üyeleri, bu konuda
MyBB 1.2x versiyondan
latin1_swedish_ci karakter setli veritabanı olan forumların
MyBB 1.4x versiyona güncellenmiş olan forumları elimden geldiği kadar nasıl manuel olarak
UTF8 karakter setine dönüştürüleceğini anlatacağım...
Eğer Veritabanı karakter seti
latin5_turkish_ci ise
SORGU GÖNDERME bölümü dışındaki bütün uygulamaları aynen yapıyoruz...
Bu dönüştürme işleminin anlatımı bilgilendirme amaçlı olup çeviri yapmaya başlayıp hata yapanlardan ve forumlarından şahsım adına ben ve MyBBDestek.CoM sorumlu değildir...
İlk önce FTP den MyBB kurulum dosyalarınızı ve Veritabanı yedeğinizi mutlaka alın... Full yedeklerinizi almadan ve konuyu tamamen okumadan kesinlikle çevirme işlemine başlamayınız...
Çevirme işlemi bittikten sonra pluginleri utf olarak değiştireceğinizden dolayı ve sonradan hata ile karşılaşmamak için bütün pluginlerinizi kapatın...
Şimdi anlatımlara geçebiliriz...
VERİTABANI KARŞILAŞTIRMA KARAKTER SETİ DEĞİŞİMİ
Cpanelden Phpmyadmin'e giriyoruz. Kullandığımız veritabanını seçiyoruz. Tabloların bulunduğu sayfanın üst kısmında
İşlemler menüsüne giriyoruz.
Karşılaştırma başlığı altındaki
latin1_swedish_ci seçeneğini
utf8_general_ci şeklinde değiştirip
Git butonunu kullanarak kaydediyoruz. Tekrar veritabanı toblolarının bulunduğu sayfaya gidiyoruz.
TABLOLARIN KARAKTER SETİNİ DEĞİŞTİRME
1- İlk sıradaki tablodan işlemlere başlıyoruz. Tablo isminin sağındaki
Yapı'ya giriyoruz.
2- Burada bütün
latin1_swedish_ci olanları seçiyoruz ve altta
Değiştir simgesine tıklıyoruz.
3- Bu sayfada
latin1_swedish_ci karakterini
utf8_general_ci yapıyoruz ve
Kaydet butonu kullanarak kaydediyoruz.
4- Kaydettikten sonra açılan pencerede
İşlemler menüsüne giriyoruz.
5- Bu menüde Tablo seçenekleri başlığı altındaki
latin1_swedish_ci yi
utf8_general_ci şeklinde değiştiriyoruz ve
Git butonunu kullanarak kaydediyoruz...

Böylece bir tablomuzun karakter setini değiştirme işlemimiz bitiyor.
Bu şekilde veritabanında bulunan bütün tabloların karakter setini yukarıda anlatılan şekilde değiştiriyoruz...
SORGU GÖNDERME
Sıra geldi veritabanında kayıtlı bulunan latin karakterlerin değiştirilmesine..
Bu karakterler veritabanında
şeklinde görünür...
Bu bölümdeki işlemler Sadece SQL sorgusu yapılarak uygulanır.
Sorgu yapılacak Tablo kolonları hakkında püf nokta şöyledir. Sorgu yapacağınız kolonlar, değiştirdiğiniz
utf8_general_ci yazan kolonlar olmalıdır. Diğer kolonlara sorgu göndermenize gerek yoktur...
Bir tablonun sorgusu için 2 örnek vermek yeterli sanırım. Tüm tablo kolonlarına verdiğim örnekteki gibi sorgu gönderilir.
Veritabanı Tablolarınızın göründüğü sayfanın en üstünde
SQL menüsünden yapılır...
mybb_adminlog Tablosunun kolonları için yapılacak örnek sorgu..
mybb_adminlog Tablosu
data kolunu sorgu örneği..
Kod:
UPDATE mybb_adminlog SET data = REPLACE (data,'ð', 'ğ')
UPDATE mybb_adminlog SET data = REPLACE (data,'ý', 'ı')
UPDATE mybb_adminlog SET data = REPLACE (data,'þ', 'ş')
UPDATE mybb_adminlog SET data = REPLACE (data,'Ð', 'Ğ')
UPDATE mybb_adminlog SET data = REPLACE (data,'Ý', 'İ')
UPDATE mybb_adminlog SET data = REPLACE (data,'Þ', 'Ş')
Buradan anladığımız şudur.
mybb_adminlog Tablosunun
data kolonu içindeki latin karakterleri türkçe karakter olarak değiştirilmesi..
Burada dikkat edilmesi gereken şudur.
data kolonu için 6 sorgu gönderiliyor. Herbir satır 1 sorgudur. Yani sorguları satır satır üstteki resimde görülen yere yazıyoruz ve
Git butondan gönderiyoruz.
Bütün Tabloların ilgili kolonlarına aynı mantığı kullanarak sorgu gönderilir.
Başka Tablo sorgusuna geçildiğinde, Sorgu başındaki Tablo isminin de değiştirilmesi gerekir...
Mesela
mybb_posts Tablosunun
message kolonuna sorgu gönderiyoruz...
Kod:
UPDATE mybb_posts SET message = REPLACE (message,'ð', 'ğ')
Şekline yapılır...
Not: Veritabanı büyük olanlar, genellikle
mybb_posts Tablosu sorgusunda tablo boyutuna göre sorguyu gönderdikten sonra uzun süre bekleyebilir. Hatta bu sorgu sonunda sayfa görüntülenemiyor hatası çıkabilir. Telaşlanmaya gerek yok. Test etmek için aynı sorgu satırını birdaha gönderin ve
Etkilenen satırlar: 0 gibi bir uyarı alacaksınız.. Demek ki hata gibi görünse de sorgu bitmiş oluyor...
Bütün Tabloların ilgili
utf8_general_ci yazan kolonlarına bu şekilde sorgu gönderilir...
Altta sorgu yapacağınız eklenti dosyasını veriyorum. İçinde sizin veritabanınıza göre sorgu satırı eksik olabilir. Bu sorguları bitirdikten sonra Tabloların bulunduğu sayfanın en üstünden
Ara butonuna tıklayın ve bütün tablolarda
ð,þ,Ð,Þ karakterlerini arayın.. Arama sonucunda çıkan sayfada
Düzenle butonu olanları tıklayın ve elle düzenleyin veya o kolona sorgu gönderin... Her düzenlemeden sonra tabloların bulunduğu sayfadan tekrar arama yapın...
sorgu_listesi.txt (Boyut: 46.84 KB / İndirilme: 307)
Toplu Sorgu Yapacaklar için:
toplusorgu.txt (Boyut: 24.49 KB / İndirilme: 164)
FTP DOSYALARININ DEĞİŞİMİ
Sıra geldi FTP de bulunan MyBB kurulum dosyalarındaki değişimlere...
Dil dosyalarının değişimi..
Alttaki linkten 1.4.4 UTF Paketi PC nize indirin...
http://indir.mybbdestek.com/utf/
Bu Paketin içinden
inc/languages/turkish.php ve
turkish klasörünü FTP den aynı dizine gönderin...
Latin paketler için düzenlenen şu an kullanılan Hızlı cevapta ajax karakter hatalarını bertaraf eden dosyaların değişimi...
İndirdiğiniz UTF paket içindeki
newreply.php ve
xmlhttp.php dosyalarını FTP den forum anadizine gönderin...
Yine Latin paketler için düzenlenmiş mail karakter hatasını düzenleyen dosyanın değişimi...
İndirdiğiniz Paket içindeki
inc/class_mailhandler.php dosyasını FTP den aynı dizine gönderin...
config dosyasının encoding ayarları...
FTP den inc/config.php dosyasını editleyin...
encoding satırını alttaki gibi düzenleyin...
Kod:
$config['database']['encoding'] = 'utf8';
Forumunuzu açın karakter hatası olup olmadığına bakın... Eğer karakter hatası var ise...
encoding satırını alttaki gibi düzenleyin.. Yani o satırı kapatın...
Kod:
//$config['database']['encoding'] = 'utf8';
Bu aşamalardan sonra hatasız olarak geçiş yaptıysanız ve forumunuz çalışıyorsa, çok önemli son bir ayar yapmanız gerekir.
AdminKP ye girin ve özel yaptığınız tanımlamaları veya diğer ayaların birer tanesini hiçbir değişiklik yapmadan tekrar kaydedin...
Örnek: Yasaklı kelime veya Örümcekler kısmında birer ayarı hiçbir değişiklik yapmadan kaydedin... Tekrar kaydetmezseniz sitenize botlar uğramaz veya yasaklı kelimeleriniz çalışmaz...
Ayrıca yüklü eklentilerinizi utf olanlarla değiştirmeniz sizin yararınıza olacaktır...
Umarım bu anlatım işinize yarar...
Eğer bu işemleri yapacaksanız kesinlikle hiç acele etmemelisiniz...
Çeviri yapacaklara kolay gelsin...