Mysql'de Türkçe Karakter Problemine Çözüm - Sanalkurs.net
Bu dersimizde bazen hostunuzu taşımak istediğinizde veritabanını taşırken yaşamış olduğunuz Türkçe karakter problemine çözüm bulacak birkaç kod ve uygulamadan bahsedeceğim.
Öncelikle veri tabanınızı taşırken Türkçe karakterler üzerinde problem yaşayabilirsiniz.
Bu problemi çözmek için en ideal yöntemlerden biri veritabanınızın standart karakter tipini değiştirmek olacak.
Dosyalarınızı veriabanına atmadan önce veritabanınızda ve tablolarınızda standart olarak gelen 'latin1-swedish-ci' ya da 'utf8-general-ci' den 'latin5-turkish-ci' olarak değiştirmeniz olacaktır.
Bu sayede Türkçe karakter sorunumuzun ilk aşamasını tamamlamış olacağız.Ve veritabanına dosyalarınızı 'latin5' karakteri şeklinde aktaracağız.Daha sonra ise kodlarımızda oynama yapacağız.
Mysql veritabanı bağlantısı kurarken ;
$db = mysql_connect($sunucu,$dbkadi,$sifre);
mysql_query("SET NAMES 'latin5' COLLATE 'latin5_turkish_ci'");
mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
şeklinde yapacağız.Bunu yapmamızdaki amaç, daha sonra veritabanına aktaracağımız verilerin de latin5 olarak veritabanına aktarılmasını ve Türkçe karakter problemini engellemiş olacağız.
Bu problemi çözmek için en ideal yöntemlerden biri veritabanınızın standart karakter tipini değiştirmek olacak. demıssınız makınamdakınımı degıstırıcem yoksa host takınımı
Veritabanınızdaki tabloların karakter tipini öncelikle latin5 yapacaksınız.Tabiki hostunuzda kullanacaksanız hostunuzun ya da lokalde çalışacaksanız lokaldeki veritabanınızın. Ve daha sonra hem insert yani veri eklerken veya update yani güncellerken veya listeletirken veritabanınızla bağlantı kurduktan sonra mysql_query("SET NAMES 'latin5' COLLATE 'latin5_turkish_ci'"); mysql_query("SET CHARACTER SET latin5"); mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'"); bu kodları yeleştirdiğiniz takdirde türkçe karakter probleminiz sunucudan sunucuya taşırken ortadan kalkacaktır.Ancak eğer zaten sisteminizi yeni kurmuş ve daha henüz veritabanınızda veri yoksa bunların hiçbirine gerek yok diye düşünüyorum. Konuyla ilgili detaylı bilgiyi şu anda kapalı gözüken ceviz.net adresinden öğrenebilirsiniz.Bu konu için ayrı bir topic açılmış olup baya bilgilendirici bilgiler yer almaktadır.
arkadaşım güsel bi açıklama olmuş bu turkçe karakter sorunu bir çok kişinin başını agrıtıyor ni tekşm benimkinide çok ağrıtmıştı benim aklıma takılan su local hostumda karakter tipi bölümünü bulamıyorum yardım ederseniz sevinirim kolay gelsin
sql dosyalarınızı upload ederken mysql versiyonunuza göre karakter tipi gözükmeyebilir.Siz karakter tipini ayarlamak istiyorsanız sql tablo yapınızda son kısımda yer alan ) ; şeklindeki yere ) charset=lating5; yaparak manuel olarak halledebilirsiniz.
Sweetlady Sweetlady • 10 yıl önce
arkadas su Mysql veritabanı bağlantısı kurarken ; demissin baska bisi dememissin nereye koyucaz bu kodu bi detayli anlatabilirmisin bekliyorum
Bmgs Bmgs • 10 yıl önce
Arkadaş bunu yazmışısın ama denedim aynı sorun devam ediyor. Hem bu işte yeni başlayan arkadaşlarıda düşünerek.yazarsan daha iyi olur