Turning gears are the logo of co-scripts

Asp sayfalarımızda, html sayfalarımızda ve ajax uygulamalarımızda sıklıkla karşılaşılan Türkçe karakter sorununa elbette internetten ulaştığımız bir bilgi ile çözüm bulduk.

Metin tabanlı dosyalar kaydedilirken belli bir formatta kaydedilirler. Bu format bilgisi içinde karakter destekleri de vardır. ASP,HTML,JS gibi dosyaları kaydederken en az problem çıkartabilecek utf-8 i tercih ediyoruz.

Bu dosyanın çalıştırılması sonucu üretilen çıktıların browserda görüntülenmesi sırasında doğru görüntülenmesi ve sunucudan doğru gönderilmesi için tüm dosyalarımızda şu belirteçleri kullanıyoruz.

 

ASP için (html içinde ayrıca meta tagı kullanıyoruz)

response.charset="ISO-8959-9" 
Session.Codepage = 1252
Response.Codepage = 65001

Buradaki 1252 ve 65001 utf-8 içeriği taşıdığını bildiriyor sunucuya, sunucuda ona göre kodlayarak yolluyor karakterleri.

 

Ajaxta :

Response.ContentType = "text/xml" 

kullanıyoruz ek olarak.

HTML içinde ayrıca browser'a anlatmak için meta tagları kullanıyoruz.

co-scripts tag image karakter kodlamakarakterencodingcodepagecharsetturkce-karakter-sorunuutf-8iso-8959-9125265001windows-1254
ID:200 | Okunma:5119


 

Zengin metin düzenleyicileri Türkçe karakterleri -doğru görüntülenmelerini garantiye almak için- HTML entities olarak kaydedebilirler. Bu RSS standartlarında sorun yaratır ve doğrulamayı geçemez.

Bunun için bir çevirici yazabiliriz. ASP(vbs) ile bir örneği aşağıdadır. Konuyla ilgili şu sayfalara bakabilirsiniz 1,2,3,4

Function HTMLnonASCIIconvertTR(MyNonASCII)
htmlNA ="Ç,ç,Ğ,ğ,İ,ı,Ö,ö,Ş,ş,Ü,ü"
htmlTR ="Ç,ç,Ğ,ğ,İ,ı,Ö,ö,Ş,ş,Ü,ü"
hNA = Split(htmlNA,",")
hTR = Split(htmlTR,",")

For NA2TR = 0 To UBound(htmlNA)
MyNonASCII = Replace(MyNonASCII,hNA(NA2TR),hTR(NA2TR))
Next
HTMLnonASCIIconvertTR = MyNonASCII 
End Function

Değerlerin tablosunu şu sayfadan aldım.

co-scripts tag image rsshtml-entitiesnon-asciikarakter cevrimiturkce-karakter-sorunu
ID:182 | Okunma:1993