කාරණාව මේකයි. අපිට ලිපියක් ලියද්දි සමහර වෙලාවට උවමනා වෙනවා ඒකට HTML sripts යොදන්න. උදාහරණයක් විදියට මගේ මේ ලිපිය බලන්නකෝ. නමුත් මේකෙ තියන HTML script එක කෙලින්ම බ්ලොග් සටහන ලියන්න තියෙන ඉඩේ සටහන් කළාට ඒක ඔබේ අඩවියෙ පෙන්නන්නෙ නෑ. හේතුව තමයි ඔබේ වෙබ් බ්රිව්සරය මගින් ඒක පෙන්නනවා (Display කරනවා) වෙනුවට ක්රියාත්මක (Execute) කිරීම. මොකද ඇත්ත වශයෙන්ම කිව්වොත් වෙබ් බ්රිව්සරයකින් වෙන්නෙ HTML entities, decode සහ encode කිරීම නිසා.
බ්රිව්සරය මේක HTML script එකක් කියල හඳුනගන්නෙ ඒකෙ තියන <, > හා & (Ampersand) ලකුණු වලින්. මේකෙ 'අඩු', 'වැඩි' ලකුණු දෙක < > විදියට භාවිතා වෙන ඕනෙම තැනක මේ අවුල එනවා. හරියටම ෂුවර් නැත්තම් නිකන් පෝස්ට් එකක පහත script එක අලවල පෝස්ට් කරල බලන්නකෝ.
<em>Ampersands & angle brackets need to be encoded.</em>පෙන්නන්නෙ නෑ නේ?
දැන් ඉතින් මේක පෙන්නගන්න නම් අපිට ඒක encode කරන්න වෙනවා. Encode කරනවා කියන්නෙ මෙච්චරයි. ඕකෙ තියන
- < ලකුණ වෙනුවට < ත්
- > වෙනුවට > ත්
- & වෙනුවට & ත්
Encode කළාට පස්සෙ අපට කලින් script එක මේ වගේ පෙනෙයි.
<em>Ampersands & angle brackets need to be encoded.</em>නමුත් මේක එපා කරපු කර්තව්යයක් වෙන්නෙ මහා දිග script එකක් encode කරන්න වුණාම. උදාහරණයක් විදිහට මගේ කලින් පෝස්ට් එකේ තියන script එක බලන්න.
මෙතෙන්දි අපට පිහිට වෙන්න උපාංග තියනවා. මේ වෙබ් අඩවිය එවැන්නක්. ඔබේ script එක එයාට දුන්නහම නොමිලේ ඒක encode කරල දෙන්න එයා සැදී පැහැදී ඉන්නවා.
ඉතින් තවත් ඔබට මෙවන් ආපදාවක් සිද්ධවෙන්නෙ නැතිවෙයි කියල මම බලාපොරොත්තු වෙනවා.
6 comments:
මටත් මේ අවුල තිබුනා blogger පාවිච්චි කරනකොට. ඒත් Wordpress වල මේ ප්රශ්නෙ නෑ. "Visible" එඩිටර් එකේ සාමාන්ය විදියට ලියාගෙන යන්න පුලුවන් (< > සමග). "HTML" එකට ගිහිං බැලුවාම ඒවා ගාණට වෙනස් වෙලා තියෙනවා.
වැදගත් ලිපියක්.
@ ප්රවීන්: ඔව්, ගොඩක් අංශ වලින් බ්ලොගර් වලට වඩා වර්ඩ්ප්රෙස් ඉදිරියෙන් තමයි ඉන්නෙ. ඒත් මම බ්ලොග් එක පටන් අරන් ටිකක් කල් නිසා දැන් මාරු වෙන්න අමාරුයි:-(
@ශාකුන්තල: බොහෝම ස්තූතියි.
හම්... ගොඩක් වටිනවා.
තෑන්කූ තැන්කූ...!!!
ස්තුතියි!
ඇත්තමයි මේක බොහෝම වැදගත් ලිපියක් අයියෙ.....
බොහෝම ස්තූතියි කරපු උදව්වට
Post a Comment
මේ ලිපිය ගැන ඔබට හිතෙන්නේ මොකක්ද? ගල්, මුල්, මල් ඕන දේකට ඉඩ...
සිංහලෙන් යතුරු කරන්නට යුනිකේත එසැණින් පරිවර්තකය භාවිතා කරන්න පුළුවන්.