ASP生成HTMLASP模板转成静态HTMLWord格式.docx
- 文档编号:13609084
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:14
- 大小:19.31KB
ASP生成HTMLASP模板转成静态HTMLWord格式.docx
《ASP生成HTMLASP模板转成静态HTMLWord格式.docx》由会员分享,可在线阅读,更多相关《ASP生成HTMLASP模板转成静态HTMLWord格式.docx(14页珍藏版)》请在冰豆网上搜索。
a,提供信息输入页面进行信息收集;
b,接受信息值先保存数据库,再FSO生成文件;
c,技术性完成任务,显示刚被创建的HTML文件的路径地址。
该技术的实现过程中有如下几个难点:
i,FSO生成的文件是直接放在一个大文件夹下,还是单独放在某个每日更新的子文件夹中?
可能表述不准确,这样理解吧:
相信通过FSO生成的文件随着时间的推移,文件会越来越多,管理也会越来越乱……通常你可能看到一些地址诸如可以分析得出应该是建立了当前日期的文件夹。
这样,一天就是一个文件夹的页面内容,查看管理也就显得比较合理。
ii,我在试图通过以上方法建立文件夹的时候,又发现了第二个问题。
第一次通过FSO建立以当前日期命名的文件夹,没有问题。
当我有新的文件需要生成时,因为是同一个程序,所以,其又将会执行建立同样的文件夹。
此时,FSO组件会发现该路径已存在……卡壳-_-!
继续处理,在首行添加代码:
OnErrorResumeNext
嘿嘿,达到自欺欺人、掩耳盗铃的效果。
iii,文件夹是建立了,文件该如何建立呢?
主要也就是文件名的生成。
当然这个就需要自己来写个函数,功能就是如何生成文件名:
<
%
functionmakefilename(fname)
fname=fname'
前fname为变量,后fname为函数参数引用
fname=replace(fname,"
-"
"
"
"
:
PM"
AM"
上午"
下午"
makefilename=fname&
.html"
endfunction
%>
引用函数则:
%fname=makefilename(now())%>
其实嘛,就是以年月日时分秒命名的文件。
iv,最后,生成的文件该如何查看到?
当然需要把生成文件的路径保存的数据库中,并且添加到相对应的记录集中了。
当然,这在下面的数据库设计时会提及到。
3,模板技术和2HTML技术的结合:
将模板中特殊代码的值替换为从表单接受过来的值,完成模板功能;
将最终替换过的所有模板代码生成HTML文件。
需要注意的是:
替换应能将输入数据的格式或者支持UBB的代码彻底改变。
二,再进行数据库设计
目前数据库的设计需要两个表:
一个是存放模板数据的;
一个是存放信息内容的。
1,建立新数据库asp2html.mdb
2,设计新数据库表c_moban
字段m_id(自动编号,主关键字);
字段m_html(备注类型)。
并将下列完整的代码拷贝至m_html字段
html>
head>
metahttp-equiv="
Content-Type"
content="
text/html;
charset=hz"
>
title>
Cnbruce.Com|ASP2HTMLTEST<
/title>
/head>
bodyleftmargin="
0"
topmargin="
tablewidth="
100%"
height="
border="
cellpadding="
5"
cellspacing="
2"
tralign="
right"
bgcolor="
#CCCCCC"
<
tdheight="
20"
colspan="
$cntop$<
/td>
/tr>
trvalign="
top"
tdwidth="
25%"
#e5e5e5"
$cnleft$<
74%"
#f3f3f3"
$cnright$<
/table>
/body>
/html>
3,设计新数据库表c_news
字段c_id:
自动编号,主关键字
字段c_title:
文本类型,保存文章标题
字段c_content:
备注类型,保存文章内容
字段c_filepath:
文本类型,保持生成文件的路径地址
字段c_time:
日期/时间类型,默认值:
Now()
三,页面需求设计
1,首先建立一个存放HTML页的文件夹
在文件同一目录下,建立文件夹newsfile,夹子内部主要存放生成的HTML页面,当然内部还会采用程序方式建立以日期命名的子文件夹,以方便浏览以及管理。
2,功能函数页面lib.asp
'
生成文件名的函数
fname=fname
makefilename=fname&
.shtml"
保持数据格式不变的函数
Functionhtmlencode(fString)
Ifnotisnull(fString)then
fString=replace(fString,"
"
)
fString=Replace(fString,CHR(32),"
fString=Replace(fString,CHR(9),"
fString=Replace(fString,CHR(34),"
fString=Replace(fString,CHR(39),"
fString=Replace(fString,CHR(13),"
fString=Replace(fString,CHR(10)&
CHR(10),"
/p>
p>
fString=Replace(fString,CHR(10),"
br>
IfNotIsNull(fString)Then
fString=trim(fString)
;
;
)'
分号过滤
--"
——"
--过滤
%20"
特殊字符过滤
=="
==过滤
&
gt;
lt;
nbsp;
quot;
#39;
单引号过滤
/P>
P>
BR>
htmlencode=fString
EndIf
EndFunction
Functionuhtmlencode(fString)
fString=Replace(fString,"
CHR(32))
CHR(9))
#34;
CHR(34))
CHR(39))
CHR(13))
CHR(10)&
CHR(10))
CHR(10))
uhtmlencode=fString
3,数据库连接页面conn.asp
完成数据库的字符串连接方法
setconn=Server.CreateObject("
ADODB.Connection"
connstr="
Provider=Microsoft.Jet.OLEDB.4.0;
DataSource="
Server.MapPath("
asp2html.mdb"
conn.Openconnstr
4,信息输入页面add.html
其实很简单:
)就是表单嘛。
注意action是跳转到addit.asp
formaction="
addit.asp"
method="
post"
title:
inputtype="
text"
>
Content:
textarearows="
8"
cols="
30"
/textarea>
input
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASP 生成 HTMLASP 模板 转成 静态 HTML