当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP进阶之文章在线管理更新(5)

ASP
用XML数据岛解决用户界面问题 - 1
用XML数据岛解决用户界面问题 - 2
用XML数据岛解决用户界面问题 - 3
关于ASP中堆栈溢出错误的解决
运用asp结合vbscript模拟股票滚屏
如何在VC++ 编写的组件中使用 ADO
VBSctipt 5.0中的新特性
ASP.NET中使用多个runat=server form
ASP.NET中的XML表单控件
页面之间传递元素的办法
转换文本为超联和Email格式的代码
vbscript和javascript互相调用
用VB6创建MTS组件
连接各种数据库的代码的总结
数据排序及如何动态排序
将HTML表单数据存储为XML格式
关于打印页面的一些经验
用vbscript判断email地址的合法性
可以近视替代remote script的代码
利用MSCHART画图的一段代码

ASP进阶之文章在线管理更新(5)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 96 ::
收藏到网摘: n/a

  ASP进阶之文章在线管理更新--对HTM代码的转化篇

作者:沙滩小子

  前面为大家介绍了文章的在线添加以及保存,但如果仅仅是这样还不够的,因为有很多的文章本身带有的HTM代码必须完整的显示出来,而不是显示出它的效果来,这也就是说必须转化HTM代码以使它能具体显示出它的代码,比如:<a href="">你好</a>你并不想在页面上显示出它是一个连接,而是显示其代码,这就象FRONTPAGE里面的直接在编辑页面写代码,只不过FRONTPAGE提供了转化的功能而已。
  在ASP中可以通过转化特定的HTM代码,以使它能以完整的形式显示,比如HTM的通用格式<>等,还有就是把ASP中显示HTM代码的格式要转化为HTM代码,比如在ASP里chr(13)表示回车,那么就要将它转化为<br>,因为在添加文章内容的时候所有的换行和空格在返回到savearticle.asp以后都是以ASP的代码表示的,所以这个时候就要将它转化为HTM代码,只有这样才能使文章正确的显示出来。
  以下就是本系统对这些代码的转化程序,在里面我都详细的标明了注解

  新建一文件articlechar.inc,其具体内容为:
<%
  "Function程序是建立在子程序过程中的成组处理功能上的,是一个独立的程序用来接受自变量以执行一系列的代码语句,以及把处理好的代码语句的结直接返回给用户代码
function htmlencode2(str)
    dim result
    dim l
    if isNULL(str) then
       htmlencode2=""
       exit function
    end if
    l=len(str)
    result=""
dim i
for i = 1 to l
  "对返回的内容进行判定,并对其含有<,>,chr(13),chr(34),&,chr(32),chr(9)进行相应的转化,如chr(13)变为<br>;也就是回车的HTM代码
    select case mid(str,i,1)
           case "<"
                result=result+"&lt;"
           case ">"
                result=result+"&gt;"
                   case chr(13)
                result=result+"<br>"
           case chr(34)
                result=result+"&quot;"
           case "&"
                result=result+"&amp;"
                   case chr(32)            
                'result=result+"&nbsp;"
                if i+1<=l and i-1>0 then
                   if mid(str,i+1,1)=chr(32) or mid(str,i+1,1)=chr(9) or mid(str,i-1,1)=chr(32) or mid(str,i-1,1)=chr(9)  then                       
                      result=result+"&nbsp;"
                   else