存储和显示TextArea用户输入

时间:2010-02-12 01:11:59

标签: c# html string

如何使用textarea处理用户输入,我需要删除用户输入的html标签,在某处存储文本并将其显示回网页。 我还需要注意换行

没有使用<pre>代码的最佳做法?

3 个答案:

答案 0 :(得分:1)

您始终可以使用\n<br />进行查找替换以保留换行符。

然而,剥离html有点棘手。最简单的方法是将<>替换为&lt;&gt;。但这实际上并没有剥离html,它只是强制它呈现为纯文本而不是html。

您可以使用正则表达式替换来删除<anything>,但这有很多潜在的陷阱。

答案 1 :(得分:0)

如果你使用PHP,你总是可以使用nl2br()函数在页面上显示文本。

答案 2 :(得分:0)

我创建了一个名为SafeComment的函数,旨在消除SQL,JavaScript,HTML和VB输入中的问题字符。由于我们的网站和代码几乎都是VB&amp; VB脚本。它的功能是允许成功接收,处理,保存和显示任何自由形式输入字段。我们需要它来维持PCI合规性。 它不漂亮,但它有效。

Function SafeComment(ByVal strInput)
' Renders Any Comment Codes Harmless And Leaves Them HTML readable In An eMail Or Web Page
' Try: SafeComment("`~!@#$%^&*()_+=-{}][|\'"";:<>?/.,")
    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