虚位以待(AD)
虚位以待(AD)
首页 > 网络编程 > ASP编程 > 用ASP程序将html代码转换为文本格式输出

用ASP程序将html代码转换为文本格式输出
类别:ASP编程   作者:码皇   来源:互联网   点击:

我们有时候需要将html代码作为文本格式输出,比如在网页留言中需要将留言里的html代码转换成文本格式,以免产生错误,甚至被挂马。

我们有时候需要将html代码作为文本格式输出,比如在网页留言中需要将留言里的html代码转换成文本格式,以免产生错误,甚至被挂马。

在学习Split的时候,我做了个例子程序也就是将关键词自动分割输出。

但是出现了个问题,那就是如果输入内容为html代码的时候,那么关键词无法正确显示并且还可能出错。

于是上网搜到了个函数Server.HTMLEncode(),可以让代码在页面里显示为源代码的形式。

根据这个情况写代码如下:

<%
ok=request.QueryString("action")
txt=server.htmlencode(Request.Form("txt"))
if ok="ok" then
%>
<%
str=Split(txt," ",-1)
%>
<%for i=0 to ubound(str)%>
第<%=(i+1)%>个关键词:<%=str(i)%><br>

<%next%>
<%else%>
<form action="splitkey.asp?action=ok" method="post">
  <p>请输入关键词用空格隔开<br />
  <input type="text" name="txt" /></p>
  <input type="submit" value="提交" />
</form>

<%end if%>

测试程序地址:http://www.icoa.cn/demo/splithtml.asp

输入一个html代码<br />,正确输出。但是后来发现如果输入中文就会出错……它把中文也转换成代码了……

于是继续驱浏览器上网,找到了一个自定义的函数,这里只截取其中一部分:

<%
function HTMLEncode(fString)
fString=replace(fString,"<","&lt;")
fString=replace(fString,">","&gt;")
HTMLEncode=fString
end function
%>

也就是将<>替换为相应html代码,而其他的不变,这样输出的时候就不会出错了。

如图:

最终测试地址:http://www.icoa.cn/demo/splitkey.asp

那么我们思维发散一下就可以知道,这个方法可以用在留言里,把留言里的<>替换成Html代码就可以避免广告链接或者挂马了……

相关热词搜索: HTML 转换 文本 ASP