如何防止html實體的雙重編碼或者以編程方式修復它們?如何防止在實體中允許雙重編碼html實體
我使用perl模塊的HTML::Entities中的encode()函數對用戶輸入中的HTML實體進行編碼。這裏的問題是我們也允許用戶直接輸入HTML實體,並且這些實體最終被雙重編碼。
例如,用戶可以輸入:
Stackoverflow & Perl = Awesome…
這最終被編碼以
Stackoverflow & Perl = Awesome…
這使得在瀏覽器中
Stackoverflow & Perl = Awesome…
我們希望這呈現爲
Stackoverflow & Perl = Awesome...
是否有辦法防止這種雙重編碼?還是有一個模塊或代碼片段,可以輕鬆解決這些雙重編碼問題?
任何幫助,不勝感激!
必須...不是...巨魔是靜態類型系統... – 2010-04-09 01:39:39
@jleedev =>這是什麼都與靜態類型系統呢? – 2010-04-09 01:50:16
嗯,我還沒有完全讀完整個問題。保持你的髒輸入與輸入輸出分開。 – 2010-04-09 01:51:54