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

ASP
用PreRender解决DataGrid分页最后一页行数不满的排版问题
基于ASP的站内多值搜索
XLS与MDB文件格式互换全攻略
一个用ASP生成html的新方法
将指定的asp文件内容生成HTML文件
使用Session记录页面地址和实现页面返回功能
IIS6架设网站常见问题及症状举例答疑
ASP调用WEBSERVICE文档
用Asp获取Dll加密新闻内容
Access2000数据库80万记录通用快速分页类
如何防止ASP木马在服务器上运行
如何使用javascript来写ASP程序
用存储过程实现ASP对数据库访问
学会在ASP中使用存储过程
ASP中和星期有关的自定义函数
水晶报表打印单据时增加空行或空白行的示例脚本
ASP+Access莫名奇妙的sql语句错误解决
ASP获取客户端MAC地址
在ASP中执行Ping命令,并且返回结果
如何使用ASP建立虚拟的FTP服务器

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


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