|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP脚本是采用明文(plaintext)方式来编写的。静态|页面|静态ASP2HTMLWITHTEMPLET
我但愿人人看到该题目就可以让设想到它的功效:
1,WITHTEMPLET意义是,天生的页面架构将接纳某个已设定的模板,在此之前我的一篇教程中先容过,但愿列位在看本教程之前对ASP接纳模板应熟习下。(固然,不看也没有成绩,本教程一样会说起精髓部分的:)详细参考:http://www.cnbruce.com/blog/showlog.asp?cat_id=26&log_id=474
2,ASP2HTML。不要我再说ASP变化成HTML的优点了吧,呵呵,个中最值得晓得的就是:静态HTML页和静态页对服务器的请求接受才能小很多,一样,静态HTML搜刮概率远比静态页面的多很多。
那末,我如今必要处置的手艺成绩就是:
1,怎样完成模板手艺?(先参看下上篇文章吧)
2,怎样完成2HTML手艺?
3,怎样让模板手艺与2HTML手艺分离?
1、先辈行手艺道理剖析
1,模板手艺参看www.cnbruce.com/blog/showlog.asp?cat_id=26&log_id=474
2,2HTML手艺又该怎样完成呢?怎样使得ASP页面变化为HTML?一样平常城市想到FSO组件,由于该组件能新建任何文件格局。
那末其全部运转历程是怎样的呢?
a,供应信息输出页面举行信息搜集;
b,承受信息值先保留数据库,再FSO天生文件;
c,手艺性完成义务,显现刚被创立的HTML文件的路径地点。
该手艺的完成过程当中有以下几个难点:
i,FSO天生的文件是间接放在一个年夜文件夹下,仍是独自放在某个逐日更新的子文件夹中?大概表述禁绝确,如许了解吧:信任经由过程FSO天生的文件跟着工夫的推移,文件会愈来愈多,办理也会愈来愈乱……一般你大概看到一些地点诸如www.xxx.com/a/2004-5-20/200405201111.html能够剖析得出应当是创建了以后日期的文件夹。如许,一天就是一个文件夹的页面内容,检察办理也就显得对照公道。
ii,我在试图经由过程以上办法创建文件夹的时分,又发明了第二个成绩。第一次经由过程FSO创建以以后日期定名的文件夹,没有成绩。当我有新的文件必要天生时,由于是统一个程序,以是,其又将会实行创建一样的文件夹。此时,FSO组件会发明该路径已存在……卡壳-_-!持续处置,在首行增加代码:嘿嘿,到达掩耳盗铃、掩耳盗铃的效果。
固然礼貌的用法是判别文件夹的有没有援用:
<%
Setfso=Server.CreateObject("Scripting.FileSystemObject")
if(fso.FolderExists(Server.MapPath(folder)))then
判别假如存在就不做处置
else
判别假如不存在则创建新文件夹
fso.CreateFolder(Server.MapPath(folder))
endif
%> iii,文件夹是创建了,文件该怎样创建呢?次要也就是文件名的天生。固然这个就必要本人来写个函数,功效就是怎样天生文件名:)援用:
<%
functionmakefilename(fname)
fname=fname前fname为变量,后fname为函数参数援用
fname=replace(fname,"-","")
fname=replace(fname,"","")
fname=replace(fname,":","")
fname=replace(fname,"PM","")
fname=replace(fname,"AM","")
fname=replace(fname,"上午","")
fname=replace(fname,"下战书","")
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="0">
<tablewidth="100%"height="100%"border="0"cellpadding="5"cellspacing="2">
<tralign="right"bgcolor="#CCCCCC">
<tdheight="20"colspan="2">$cntop{LogContent}lt;/td>
</tr>
<trvalign="top">
<tdwidth="25%"bgcolor="#e5e5e5">$cnleft{LogContent}lt;/td>
<tdwidth="74%"bgcolor="#f3f3f3">$cnright{LogContent}lt;/td>
</tr>
</table>
</body>
</html> 3,计划新数据库表c_news
字段c_id:主动编号,主关头字
字段c_title:文本范例,保留文章题目
字段c_content:备注范例,保留文章内容
字段c_filepath:文本范例,坚持天生文件的路径地点
字段c_time:日期/工夫范例,默许值:Now()
三,页面需求计划
1,起首创建一个寄存HTML页的文件夹
在文件统一目次下,创建文件夹newsfile,夹子外部次要寄存天生的HTML页面,固然外部还会接纳程序体例创建以日期定名的子文件夹,以便利扫瞄和办理。
2,功效函数页面lib.asp援用:
<%
天生文件名的函数
functionmakefilename(fname)
fname=fname
fname=replace(fname,"-","")
fname=replace(fname,"","")
fname=replace(fname,":","")
fname=replace(fname,"PM","")
fname=replace(fname,"AM","")
fname=replace(fname,"上午","")
fname=replace(fname,"下战书","")
makefilename=fname&".shtml"
endfunction
坚持数据格局稳定的函数
functionHTMLEncode(fString)
fString=replace(fString,">",">")
fString=replace(fString,"<","<")
fString=Replace(fString,CHR(32),"")
fString=Replace(fString,CHR(13),"")
fString=Replace(fString,CHR(10)&CHR(10),"<br>")
fString=Replace(fString,CHR(10),"<br>")
HTMLEncode=fString
endfunction
%> 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
[quote]援用:
<formaction="addit.asp"method="post">
Title:<inputtype="text"name="c_title"><br>
Content:<br>
<textareaname="c_co</p>ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 |
|