Simple Machines Community Forum

SMF Support => Türkçe Bölümü (Turkish) => Language Specific Support => Dokümantasyon => Topic started by: ayhansaritas on January 25, 2011, 09:40:37 AM

Title: Kazayla UTF8 yapıp geri dönemediyseniz ne yaparsınız
Post by: ayhansaritas on January 25, 2011, 09:40:37 AM
Arkadaşlar Forumların her zaman ki 1. hastalığı burada da mevcut. Birisi bi konuda dertli ve çözüm arıyor diyelim.
Çözümü bulunca gelip buraya kimse yazmıyor. Hep ağlayanların gözyaşlarını görüyoruz burada. Kimseden bir tebessüm göremiyoruz desek yeridir. Çözüm var tabi bir çok noktada.

Ben derdimi çözdüm sonra geldim üye oldum sırf başı ağrayan arkadaşlar uğraşmasın diye.

Bu sabah kaşıntı tuttu ve SMF 1.2 forumu gittim ISO-8859 iken UTF-8 yaptım ve o an bittim. Forum dağıldı resmen. ÜYe girmesin diye dualar ettim.

Yaklaşık 6-7 saat uğraştıktan sonra kurtuldum bu işten.
Öncelikle bu işin tek tıkla kurtuluşu yok arkadaşlar. Sebebi şu. MYSQL üzerinde birçok tablo var ve bunların içindeki dataları manuple edip öyle utf8 e dönüştürüyor sistem. Bu yüzden geri dönmek daha bi zahmetli onu diyim.
Madem yola çıktınız UTF-8 e devam edin derim.

yapacaklarınız çok basit
1.Veritabanının Dil Seçeneklerini gidip kontrol edeceksiniz UTF8-General olması gerekiyor. Böylece multi language olacaktır.
2.SMF_Messages tablosundaki body,message kolonlarını UTF-8-General yapın. Böylece gelen mesajlarda patlamaz forum.
3.Bunu pool yani anketler için de yapın
3.Mesaj, kullanıcı, konu tablolarına girip türkçe fontu göremediğiniz bölümlere alttaki sql komutunu çakacaksınız.

messages kısmında body ve subject için mesela bunun olması gerek. user tablosunda kullanıcı adı ve ekran adlarında da sorunlar olabilir.
Pool tablosunda varsa anketlerinizde de sorunlar olabilir. buraları da düzenleyin.
Şifresini türkçe yazanlara bişey yapamazsınız bu arkadaşlar büyük ihtimalle yeni şifre maili isteyecekler.
Web hosting başkalarında ise PHPMyAdmin ile yapın. Yok erişebiliyorsanız ip adresine o zaman HEIDISQL ile yapın.

update `smf_boards` set `description` = replace(description, 'ý','ı');
update `smf_boards` set `description` = replace(description, 'ð','ğ');
update `smf_boards` set `description` = replace(description, 'þ','ş');
update `smf_boards` set `description` = replace(description, 'Ý','İ');
update `smf_boards` set `description` = replace(description, 'Þ','Ş');

benim gördüğüm bozuk harfler yukarıdakiler. Siz başka harflerde bozukluk görüyorsanız onlara da uygulayın. Aman dikkat edin "?" şeklindeki harflerde yapacak pek birşey yok oralara belkide tek tek müdahale edeceksiniz.

Neyse. Settings.php dosyasına da en alta bunu yazın ya da varsa değiştirin

$db_character_set = 'utf8';

Baktınız ki mesajlar düzeldi ama site menüsü ve forum temel metinleri bozuk.
hiç paniğe kapılmayın. Forum altındaki Themes/default/languages klasöründeki *****Turkish.php isimli tüm dosyaları bi alın bilgisayarınıza
notepad ile açıp farklı kaydet diyin en altta Kaydet butonunun solunda bir comboboxta ANSI göreceksiniz Kodlama yazar başında Orayı UTF-8 olarak değiştirin. tüm dosyaları kaydettikten sonra tekrar upload edin siteye.

%98 halloluyor
%2 lik kısım ise büyük İ ve küçük ı bunlara sadece messages tablosunun topic kısmında rastladım 4-5 tanesini elle düzelttim sorun kalmadı.

Dilerim herkese sorunsuz çıkar bu dertten
Ayhan
Title: Re: Kazayla UTF8 yapıp geri dönemediyseniz ne yaparsınız
Post by: n[òF]bRò on January 25, 2011, 11:16:38 AM
şahsen utf olması arama motorları için yararlı arama sonuçlarında daha iyi sonuç veriyo bu yüzden dönmek istemem benn
Title: Re: Kazayla UTF8 yapıp geri dönemediyseniz ne yaparsınız
Post by: PLAYBOY on February 08, 2011, 06:44:09 PM
Arkadasim guzel aciklama ama peki biz sorunsuz, korkusuz utf yapmak istiyorsak nasil yapacagiz? Bunun kolay bir yolu yok mu? Illa mysql den giripde birton degisiklikmi yapmamiz gerekiyor?
Title: Re: Kazayla UTF8 yapıp geri dönemediyseniz ne yaparsınız
Post by: A.Pearce on February 11, 2011, 09:14:46 AM
Quote from: PLAYBOY on February 08, 2011, 06:44:09 PM
Arkadasim guzel aciklama ama peki biz sorunsuz, korkusuz utf yapmak istiyorsak nasil yapacagiz? Bunun kolay bir yolu yok mu? Illa mysql den giripde birton degisiklikmi yapmamiz gerekiyor?

Güzel soru sormuşsun.
Title: Re: Kazayla UTF8 yapıp geri dönemediyseniz ne yaparsınız
Post by: intFUSE on February 11, 2011, 03:51:50 PM
Quote from: PLAYBOY on February 08, 2011, 06:44:09 PM
Arkadasim guzel aciklama ama peki biz sorunsuz, korkusuz utf yapmak istiyorsak nasil yapacagiz? Bunun kolay bir yolu yok mu? Illa mysql den giripde birton degisiklikmi yapmamiz gerekiyor?

Hatırladığım kadarıyla UTF-8 dosyalarını FTP'ye atmanız gerekiyor. Sonrasında Mysql'den gerekli yerleri çevirmeniz lazım UTF-8'e. Ama yine de ne olur ne olmaz diye önceden tüm sistemin yedeğini hosting panelinizden alın.
Title: Re: Kazayla UTF8 yapıp geri dönemediyseniz ne yaparsınız
Post by: PLAYBOY on February 11, 2011, 07:22:20 PM
Yedek almak sorun degilde yedegi yuklemek zaten saatleri aliyor. Bazen yedeklerde hatali cikiyor zaten. Ben bir yedegi yerlestirmek icin 3 gunumu verdigimi biliyorum, Bu sure zarfinda kac uye ve ziyaretci kaybettim Allah bilir.

Yani su ise adam akilli guzel ve kolay bir cozum bulamadilar bir turlu. En son 2.0 in tamamen utf-8 den olusmasi dusunuluyordu. ama gene yapmadilar.