Mysql'de Türkçe Karakter Problemine Çözüm

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 CHARACTER SET latin5");

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.

Herkese çalışmalarında başarılar dilerim.

Saygılarımla...
  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

• 12 yıl önce
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ı
• 12 yıl önce
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.
• 12 yıl önce
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
• 12 yıl önce
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.
• 11 yıl önce
arkadas su Mysql veritabanı bağlantısı kurarken ; demissin baska bisi dememissin nereye koyucaz bu kodu bi detayli anlatabilirmisin bekliyorum
• 11 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

Yukarı Git