- Konu sahibi
- #1
Türkçe karakterleri düzeltmek için HTML dosyasını UTF-8 kodlamasıyla kaydedin, sayfanın başına UTF-8 bildirimi ekleyin ve sunucunun farklı bir kodlama bildirmediğini kontrol edin. Metin dosyada veya veri kaynağında zaten bozulmuşsa yalnızca bildirim eklemek onu onarmaz; önce doğru metni geri getirmek gerekir.
Özgün kodlamayı bilmiyorsanız eski bir kopyadan yararlanın. Metin daha önce hatalı kaydedilmişse doğru kodlamayla yeniden açmak da yeterli olmayabilir; sağlam yedekten geri getirmek veya metni düzeltmek gerekebilir.
Örneğin yeni bir HTML dosyasını aşağıdaki içerikle oluşturup UTF-8 olarak kaydedebilirsiniz:
Dosyayı tarayıcıda açtığınızda sözcükler örnekteki gibi görünmelidir. Bu deneme temel dosyanın doğru görüntülendiğini gösterir; sunucudan gelen asıl sayfanın veya veri tabanından alınan metinlerin de doğru olduğunu tek başına kanıtlamaz. Mevcut sayfayı değiştirdiyseniz dosyayı kaydedin, gerekiyorsa sunucuya yükleyin ve sayfayı yenileyerek aynı kontrolü yapın.
Başlıkta farklı bir
Sunucu ayarlarını değiştiremiyorsanız yöneticisine sorunlu sayfanın adresini, görülen
Dosyayı UTF-8 olarak kaydedin
Karakter kodlaması, metnin dosyada hangi baytlarla saklandığını belirler. Dosyayı düzenleyicinizde açın ve Türkçe metnin burada doğru görünüp görünmediğine bakın. Bozuk görünüyorsa dosyanın bir kopyasını alın; özgün kodlamasını biliyorsanız dosyayı o kodlamayla yeniden açın. Metin düzeldikten sonra düzenleyicinin kodlama seçeneğiyle UTF-8 olarak kaydedin. Yalnızca dosyayı UTF-8 etiketiyle yeniden açmak, eski kodlamadaki içeriği dönüştürmekle aynı şey değildir.Özgün kodlamayı bilmiyorsanız eski bir kopyadan yararlanın. Metin daha önce hatalı kaydedilmişse doğru kodlamayla yeniden açmak da yeterli olmayabilir; sağlam yedekten geri getirmek veya metni düzeltmek gerekebilir.
HTML içinde kodlamayı bildirin
Mevcut sayfanınhead bölümünün hemen başına aşağıdaki satırı ekleyin. Başka bir karakter kodlaması bildirimi varsa onunla çelişmeyecek şekilde düzenleyin.
HTML:
<meta charset="utf-8">
Örneğin yeni bir HTML dosyasını aşağıdaki içerikle oluşturup UTF-8 olarak kaydedebilirsiniz:
HTML:
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="utf-8">
<title>Karakter denemesi</title>
</head>
<body>
<p>Çığ, İstanbul, öğrenci, şeker, üzüm</p>
</body>
</html>
Dosyayı tarayıcıda açtığınızda sözcükler örnekteki gibi görünmelidir. Bu deneme temel dosyanın doğru görüntülendiğini gösterir; sunucudan gelen asıl sayfanın veya veri tabanından alınan metinlerin de doğru olduğunu tek başına kanıtlamaz. Mevcut sayfayı değiştirdiyseniz dosyayı kaydedin, gerekiyorsa sunucuya yükleyin ve sayfayı yenileyerek aynı kontrolü yapın.
Sunucudan gelen kodlamayı kontrol edin
Sayfa sunucuda hâlâ bozuksa tarayıcının geliştirici araçlarında ağ isteklerini açın, sayfayı yenileyin ve ana HTML belgesinin yanıt başlıklarındakiContent-Type değerine bakın. UTF-8 bildiren bir yanıt şu biçimde olabilir:
Kod:
Content-Type: text/html; charset=utf-8
Başlıkta farklı bir
charset varsa sunucu veya sayfayı üreten uygulama bu değeri UTF-8 olarak gönderecek şekilde düzeltilmelidir. HTTP başlığındaki bildirim normalde HTML içindeki bildirimden önce değerlendirilir; dosya başındaki BOM gibi işaretler önceliği etkileyebilir. Başlıkta karakter kodlaması yoksa sayfadaki UTF-8 bildiriminin ve dosyanın gerçekten UTF-8 olmasının önemi devam eder.Sunucu ayarlarını değiştiremiyorsanız yöneticisine sorunlu sayfanın adresini, görülen
Content-Type değerini ve dosyanın UTF-8 kaydedildiği bilgisini iletin; yanıtın UTF-8 ile uyumlu sunulmasını isteyin. Değişiklikten sonra sayfayı yenileyip hem başlığı hem Türkçe metni tekrar kontrol edin.Yalnızca bazı metinler bozuksa
HTML içine doğrudan yazılan deneme metni doğru, fakat veri tabanı veya başka bir kaynaktan gelen içerik bozuksa sorun ilgili verinin saklandığı, okunduğu veya sayfaya aktarıldığı aşamada olabilir. Önce aynı metnin kaynakta doğru olup olmadığını kontrol edin; doğruysa uygulamanın bağlantı ve veri aktarımı kodlamalarını inceleyin. Kaynakta da bozuksa sağlam yedekten geri yüklemek veya içeriği düzeltmek gerekebilir. Ayarları değiştirmek, önceden bozulmuş kayıtları kendiliğinden düzeltmez.
Moderatör tarafında düzenlendi: