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

ASP
用asp执行DTC
利用ADODB.Stream使用浏览器下载服务器文件
应用数据库的唯一性约束并在asp中捕捉数据库的错误
用ASP编程控制在IIS建立Web站点
asp实现k线图(在线)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(7)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(6)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(5)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(4)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(3)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(2)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(1)
用文本+ASP打造新闻发布系统。几点补充
用文本+ASP打造新闻发布系统(五)新闻修改
用文本+ASP打造新闻发布系统(四)新闻删除
用文本+ASP打造新闻发布系统(三)新闻列表显示
用文本+ASP打造新闻发布系统(二)新闻添加
ASP作的剪包锤游戏
ASP注册表项目修改
构建稳定的服务器端组件的七个步骤

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 125 ::
收藏到网摘: 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