HTML Encode / Decode Çevirici
HTML Encode, metindeki <, >, & ve " gibi özel karakterleri HTML varlıklarına çevirerek sayfada güvenle gösterilmesini sağlar; Decode ise bu varlıkları okunur metne döndürür. Örneğin "<b>" metni "&lt;b&gt;" olur. Aşağıdaki kutuya metni yapıştırın, sonucu anında görün.
HTML encode, özel karakterleri (< > & ") güvenli varlıklara çevirerek tarayıcının kod olarak yorumlamasını engeller; XSS güvenliği ve metni HTML içinde göstermek için kullanılır. URL encode'dan farklıdır.
🔗 Bu aracı sitene ekle
Bu hesaplama aracını kendi web sitende ücretsiz kullanabilirsin. Rengini ayarla, hazır kodu kopyala, sitene yapıştır — hepsi bu kadar.
Aracı sitene ekle →HTML encode / decode nedir?
HTML encode, metindeki özel karakterleri tarayıcının komut olarak değil düz metin olarak göstereceği HTML varlıklarına (entity) çeviren işlemdir. HTML'de <, >, & ve " gibi karakterlerin özel anlamı vardır; bunları olduğu gibi yazarsanız tarayıcı etiket veya kod sanıp yanlış yorumlar. Kodlama bu karakterleri güvenli karşılıklarıyla (örneğin < yerine <) değiştirir. Decode ise tam tersini yapar: varlıkları alıp yeniden gerçek karaktere döndürür.
Nasıl kullanılır?
Araç iki yönlü çalışır; tek yapmanız gereken metni girip yönü seçmektir:
- Kodla (Encode): Düz metni kutuya yapıştırın; <, >, & ve tırnak işaretleri HTML varlıklarına dönüşür.
- Çöz (Decode): <, & gibi varlıklar içeren metni yapıştırın; okunabilir hâline döner.
- Kopyalayın: Çıkan sonucu tek tıkla kopyalayıp kodunuza veya içeriğinize yapıştırabilirsiniz.
Sonuç anında ekrana gelir; herhangi bir kurulum ya da üyelik gerekmez.
En sık kullanılan HTML varlıkları
| Karakter | HTML varlığı | Anlamı |
|---|---|---|
| < | < | Küçüktür / etiket başı |
| > | > | Büyüktür / etiket sonu |
| & | & | Ve işareti (ampersand) |
| " | " | Çift tırnak |
| ' | ' | Tek tırnak (kesme işareti) |
HTML encode neden gereklidir? (XSS güvenliği)
Kullanıcıdan alınan metni doğrudan sayfaya basmak ciddi bir güvenlik açığı doğurur. Bir kullanıcı yorum alanına etiketi yazarsa ve siz bu metni kodlamadan gösterirseniz, tarayıcı bunu çalıştırılabilir kod sanar; bu saldırı türüne XSS (Cross-Site Scripting) denir. HTML encode, < ve > gibi karakterleri zararsız varlıklara çevirdiği için saldırgan kod çalışmaz, yalnızca ekranda metin olarak görünür. Bu yüzden web geliştirmede kullanıcı girdisini ekrana yazmadan önce kodlamak temel bir güvenlik kuralıdır.
URL encode'dan farkı nedir?
İki kodlama da özel karakterleri güvenli biçime çevirir ama farklı yerler içindir. HTML encode, metni bir HTML sayfası içinde doğru ve güvenli göstermek için varlıklar (< gibi) kullanır. URL encode ise metni bir internet adresinde taşımak için yüzde kodlamayı (boşluk için %20 gibi) kullanır. Aynı metin bağlama göre farklı kodlanır: boşluk URL'de %20, HTML'de çoğu zaman olduğu gibi kalır. İçeriği nereye yerleştireceğinize göre doğru kodlamayı seçin.
İpucu
Bir metni iki kez kodlamayın; aksi halde & işareti tekrar kodlanıp & gibi çift kodlamaya yol açar ve metin bozuk görünür. Decode yaparken yalnızca beklediğiniz varlıkların çözüldüğünden emin olun; HTML içine yerleştirdiğiniz her kullanıcı girdisini ise mutlaka önce kodlayın.
Sıkça Sorulan Sorular
HTML entity (varlık) nedir?
HTML entity, tarayıcıda özel anlamı olan veya doğrudan yazılamayan karakterleri güvenle göstermek için kullanılan kodlu ifadelerdir. & ile başlar, noktalı virgülle biter; örneğin küçüktür işareti < olarak yazılır. Bu sayede tarayıcı karakteri komut sanmaz, metin olarak ekrana basar.
HTML encode XSS saldırılarını nasıl önler?
XSS, saldırganın sayfaya zararlı kod enjekte etmesidir. Kullanıcı girdisindeki < ve > karakterleri HTML encode ile < ve > varlıklarına çevrildiğinde, tarayıcı bu metni etiket veya betik olarak çalıştırmaz, yalnızca ekranda gösterir. Böylece eklenen kod etkisiz kalır ve sayfa güvende olur.
HTML encode ile URL encode arasındaki fark nedir?
HTML encode, metni HTML sayfası içinde güvenle göstermek için varlıklar (&lt; gibi) kullanır. URL encode ise metni internet adresinde taşımak için yüzde kodlamayı (boşluk için %20) kullanır. Aynı karakter bağlama göre farklı kodlanır; içeriği nereye koyacağınıza göre doğru yöntemi seçmelisiniz.
Türkçe karakterleri HTML olarak kodlamak gerekir mi?
Sayfanız UTF-8 kodlamasıyla sunuluyorsa ç, ğ, ı, ö, ş, ü gibi Türkçe harfleri kodlamanıza gerek yoktur; olduğu gibi doğru görünür. Asıl kodlanması gerekenler <, >, & ve tırnak gibi HTML'de özel anlamı olan karakterlerdir. Bu araç istediğinizde Türkçe harfleri de güvenle çözer.