Ne arayalım?

ARAMIZA KATILIN

BİZE ULAŞIN

Adres:

E-posta:

host/bin/bilisimlife.dll

iletisim@bilisimlife.net




 
Rserit
Developer
       
 1029  
 278

Asp'de MySQL Türkçe karakter sorunu ve çözümü

Merhabalar,
Dil kodlamaları mühimdir. Gerek kodlamalarda gerekse fonksiyonlarda ufak hatalar günlerinizi alabilir. PHP'de alternatifler olduğu gibi ASP'de de var. ASP'de olan yöntemleri kısaca bahsedelim. Asp kodlamada, sql veritabanının bağlandığı yerlerde karakter için iki metod kullanabiliriz. Şöyle:

Birinci metod:

Baglanti.Open = "driver={mysql odbc 3.51 driver}; server=localhost; port=3306; UID=kullanici_adi; pwd=sifre; db=database_adi; stmt=SET NAMES 'Latin5'

Ilk metod üzerine bir ek yaparak daha da sağlamlaştırabiliriz. Yani biraz daha çözüme yakın olabilir. Birinci metodu şöyle düzeltirsek:

Baglanti.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER="&myserver&";UID="&mykadi&";pwd="&mysifre&";db="&dbname&";option=16387;stmt=SET NAMES 'latin5';"

Düzenlediğimiz ilk metoda ek olarak option=16387 yazdık. Böyle daha sağlam oldu. Siz hangisini dilerseniz onu deneyebilirsiniz.

Ikinci metod:

Baglanti.Open = "driver={mysql odbc 3.51 driver}; server=localhost; port=3306; UID=kullanici_adi; pwd=sifre; db=database_adi"
Baglanti.Execute "SET NAMES 'latin5'"
Baglanti.Execute "SET CHARACTER SET latin5"
Baglanti.Execute "SET COLLATION_CONNECTION = 'latin5_turkish_ci'"

Genellikle ilk metod uygun oluyor. Ikinci metod daha ince detaylı olanı, o da olabilir. Bununla birlikte, veri tabanını içeri aktarırken latin5 karakter setini kullanın. Bu sayede tablolarınız latin5 karakter altında olacaktır.
Ve yine bununla birlikte, bu kodlarla hiiiç alakası olmayan bir çözüm yöntemi daha var. Bizzat yaşadım. Eğer sorunlar devam ediyorsa ve eğer web siteniz subdomain içerisindeyse, bu yüzden olabilir. Subdomain alanındayken scriptlerin bazıları veyahut veri tabanları düzgün çalışmayabiliyor. Ana dizinde deneyin, belki düzelir.

Çok nadir de olsa hem Asp'de hem Php'de rastlanılan bir problem var. Bu hata dosya yapısından kaynaklanıyor. Webexpress 2 kullanıyorsunuz diyelim (örnek ile ben). Eğer kalkıp da Webexpress 4 kullandığınızda, mevcut dosyanızda herhangi bir sorun yokken, 4. versiyonda kaydedip siteye gönderdiğinizde Türkçe karakterler bozulabilir. Aynısı Php'de de yaşanabiliyor. Genel olarak kaydedersek programlar dosya yapılarında değişiklik yapıyor. Bu da karakterlerde hata yapmasına neden oluyor.


Bu arada phpMyAdmin'de sql tablonuzun karşılaştırma değerleri şu şekilde gözükmeli:

Böylesi daha iyi. Kolay gelsin.
Saygılarımla,
Recep ŞERIT.



Mesaj 23.06.2012 22:25:54 tarihinde Rserit tarafından düzenlenmiştir.

Developer.


 
Enes
Emekçi
       
 219  
 134

Bu sorun üzerinde haftalarca uğraştığını biliyorum

Emekci.