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;
Mehmet Akif Eker
Hakkında bilgi en kısa sürede eklenecektir.
Yorum Yaz

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

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