HTML اینٹیٹیز اینکوڈر اور ڈی کوڈر

استعمال کا طریقہ 3 مراحل
  1. سمت چنیں: انکوڈ یا ڈی کوڈ۔
  2. اپنا ان پٹ چسپاں کریں اور تبدیل کریں دبائیں۔
  3. کاپی کریں دبائیں۔
نتیجہ

ڈی کوڈنگ نام والی، اعشاری اور سولہ عددی اینٹیٹیز کو براؤزر کے اپنے HTML پارسر سے ایک الگ عنصر میں حل کرتی ہے، اس لیے ان پٹ میں کوئی چیز چل نہیں سکتی۔ انکوڈنگ یونی کوڈ کوڈ پوائنٹس پر چلتی ہے، اس لیے ایموجی اور بنیادی پلین سے باہر کے حروف کبھی درمیان سے نہیں کٹتے۔

یہ ٹول کیسے کام کرتا ہے

انکوڈنگ ان حروف کی جگہ ان کے entity متبادل رکھ دیتی ہے جو مارک اپ میں معنی رکھتے ہیں، تاکہ وہ کوڈ کے طور پر پڑھے جانے کے بجائے عبارت کے طور پر دکھائی دیں۔ جو پانچ ہمیشہ اہم ہیں وہ ایمپرسینڈ، دونوں زاویہ نما بریکٹ اور دونوں طرح کے واوین ہیں — یہی وہ ہیں جو صارف کے ان پُٹ کو script ٹیگ میں بدل دیتے ہیں، اور انہیں محفوظ کرنا اس کے خلاف سب سے پرانا دفاع ہے۔ ان پانچ سے آگے کہاں تک جانا ہے، یہ آپ چنتے ہیں۔

نام والا دائرہ تقریباً چالیس عام حروف کے لیے پڑھنے کے قابل entity استعمال کرتا ہے — حقِ اشاعت کا نشان، خم دار واوین، ڈیش، اعراب والے حروف — اور ASCII سے اوپر کی باقی ہر چیز کے لیے عددی حوالوں پر واپس آ جاتا ہے۔ ڈی کوڈ کرنا عبارت کو براؤزر کے اپنے پارسر سے گزارتا ہے، ایک الگ تھلگ عنصر کے ذریعے، جو ہر وہ entity حل کر دیتا ہے جسے براؤزر جانتا ہو اور کچھ چلائے بغیر، کیونکہ وہ عنصر صفحے سے کبھی جوڑا ہی نہیں جاتا۔

کتنا انکوڈ کرنا ہے، اور کب

  • پانچ خاص حروف ہی سلامتی والے ہیں: باقی سب دکھانے یا منتقل کرنے کا سوال ہے۔ اگر آپ صارف کا ان پُٹ صفحے میں رکھنے کے لیے محفوظ کر رہے ہیں تو یہی پانچ اہم ہیں۔
  • جدید صفحات کو باقی کی شاذ ہی ضرورت ہوتی ہے: UTF-8 کے ساتھ، جو اب تقریباً ہر جگہ ہے، اعراب والا حرف یا خم دار واوین سورس میں جوں کے توں بیٹھ سکتے ہیں۔ مکمل انکوڈنگ پرانے نظاموں، ای میل ٹیمپلیٹوں اور ہر ایسی جگہ کے لیے ہے جہاں انکوڈنگ کا یقین نہ ہو۔
  • نام والے entity پڑھنے کے قابل ہیں، عددی ہر جگہ چلتے ہیں: نام والی صورت سورس میں پہچاننا آسان ہے؛ عددی صورت وہاں بھی کام کرتی ہے جہاں کوئی نام پہچانا نہ جائے۔
  • یہ محفوظ کرنا ہے، صفائی نہیں: انکوڈنگ مارک اپ کو عبارت کے طور پر دکھاتی ہے۔ یہ اس HTML سے کوئی خطرناک چیز نہیں نکالتی جسے آپ HTML ہی رکھنا چاہتے ہوں — وہ الگ کام ہے جس کے لیے اصل سینیٹائزر چاہیے۔

Five characters carry the actual security weight

The ampersand, the two angle brackets and both kinds of quote are what turn ordinary user input into an actual script tag if left unescaped, and encoding them is the oldest defence against exactly that. The [msm_tool slug="html-entities"] handles those five as the essential case; everything past them is a question of display rather than safety.

Modern, UTF-8 pages rarely need the rest

With UTF-8 now close to universal, an accented letter or a curly quote can sit directly in the page source as itself without needing an entity at all. Encoding beyond the five essential characters is mainly for older systems, email templates, or anywhere the page's encoding is genuinely uncertain rather than something every page needs by default.

Named entities read better, numeric ones work everywhere

The named scope covers around forty common characters — the copyright sign, curly quotes, dashes, accented letters — with readable entities, and falls back to numeric references for anything above that. A named entity is easier to recognise sitting in source code; a numeric one works even in the rare case a particular name is not recognised by whatever is reading it.

This is escaping, not sanitising

Encoding makes markup display as literal text rather than being interpreted as code, which is a genuinely different job from removing something dangerous out of HTML that is meant to stay HTML. Escaping output when it should read as plain text is the right tool here; cleaning up markup that must remain markup needs an actual sanitiser instead.

Decoding is safe because nothing ever runs

Decoding is done by handing the text to the browser's own parser through an element that is never attached to the page, so every entity the browser recognises gets resolved without any script content ever having the chance to execute. The element stays detached for the entire operation, which is what makes decoding untrusted input safe to do at all.

اکثر پوچھے گئے سوالات

خاص طور پر HTML اینٹیٹیز اینکوڈر اور ڈی کوڈر کے بارے میں۔ اس زمرے سے متعلق عمومی سوالات کے جواب زمرے کے صفحے پر موجود ہیں۔

ایمپرسینڈ، دونوں زاویہ نما بریکٹ اور دونوں واوین۔ یہی پانچ ہیں جو صارف کے ان پُٹ کو مارک اپ بننے دیتے ہیں۔
UTF-8 صفحے پر نہیں — وہ سورس میں جوں کے توں بیٹھ سکتے ہیں۔ انہیں پرانے نظاموں، ای میل ٹیمپلیٹوں یا ایسی جگہوں کے لیے انکوڈ کریں جہاں انکوڈنگ بھروسے کے قابل نہ ہو۔
نام والے سورس میں پڑھنے کے قابل ہیں۔ عددی ہر جگہ چلتے ہیں، بشمول وہاں جہاں کوئی خاص نام پہچانا نہ جائے۔
جی ہاں۔ یہ ایک الگ تھلگ عنصر استعمال کرتا ہے جو صفحے میں کبھی شامل نہیں ہوتا، اس لیے براؤزر entity حل کرتا ہے بغیر کچھ چلائے۔
نتیجہ محفوظ کرنا دفاع کا حصہ ہے، پورا دفاع نہیں۔ جس مارک اپ کو آپ مارک اپ ہی رکھنا چاہتے ہوں اس کے لیے اصل سینیٹائزر درکار ہے۔

نئے ٹولز، خصوصیات اور کارکردگی بڑھانے کے مشوروں کی اطلاع پانے کے لیے سبسکرائب کریں۔