2010-02-12 71 views
0

我該如何處理與textarea的用戶輸入,我需要剝去用戶輸入的HTML標籤,存儲文本的地方,並顯示它回來的網頁。 我還需要注意換行符存儲和顯示文本區域用戶輸入

沒有使用<pre>標記的任何最佳做法?

回答

1

你總是可以做一個與<br />\n查找替換保留換行符。

但是,剝離html有點棘手。最簡單的做法是用&lt;&gt;替換<>。但是這實際上並沒有剝離html,它只是強制它以純文本而不是html來呈現。

你可以使用正則表達式替換刪除<anything>但有許多潛在的隱患。

0

如果你使用PHP,你可以隨時使用nl2br()函數來顯示文本後面的頁面上。

0

我創建了一個名爲SafeComment功能設計爲從輸入SQL,JavaScript的,HTML和VB消除問題的字符。由於我們的網站和代碼幾乎都是VB腳本VB &。它的功能是允許任何自由形式的輸入字段被成功接收,處理,保存和顯示。我們需要它來維護PCI合規性。 這不是很漂亮,但它的工作原理。

Function SafeComment(ByVal strInput) 
' Renders Any Comment Codes Harmless And Leaves Them HTML readable In An eMail Or Web Page 
' Try: SafeComment("`[email protected]#$%^&*()_+=-{}][|\'"";:<>?/.,") 
    SafeComment = "" 
    If Len(strInput) = 0 Then Exit Function 
    SafeComment = Replace(_ 
        Replace(Replace(Replace(_ 
        Replace(Replace(Replace(_ 
        Replace(Replace(Replace(_ 
        Replace(Replace(Replace(_ 
        Server.HtmlEncode(Trim(strInput)), _ 
        ":", "&#58;"), "-", "&#45;"), "|", "&#124;"), _ 
        "`", "&#96;"), "(", "&#40;"), ")", "&#41;"), _ 
        "%", "&#37;"), "^", "&#94;"), """", "&#34;"), _ 
        "/", "&#47;"), "*", "&#42;"), "\", "&#92;"), _ 
        "'", "&#39;") 
End Function