仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 450|回复: 8
打印 上一主题 下一主题

[学习教程] ASP教程之ASP天生静态页面的办法

[复制链接]
活着的死人 该用户已被删除
跳转到指定楼层
#
发表于 2015-1-16 23:45:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

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组件会发明该路径已存在……卡壳-_-!持续处置,在首行增加代码:
援用:
OnErrorResumeNext
嘿嘿,到达掩耳盗铃、掩耳盗铃的效果。

固然礼貌的用法是判别文件夹的有没有
援用:
<%
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最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-22 23:07:04 | 只看该作者
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
金色的骷髅 该用户已被删除
7#
发表于 2015-3-16 12:51:06 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
兰色精灵 该用户已被删除
6#
发表于 2015-3-8 19:42:57 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
乐观 该用户已被删除
5#
发表于 2015-2-27 04:11:37 | 只看该作者
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
飘灵儿 该用户已被删除
地板
发表于 2015-2-3 23:36:45 | 只看该作者
那么,ASP.Net有哪些改进呢?
小魔女 该用户已被删除
板凳
发表于 2015-2-2 09:43:47 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-25 19:34:33 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
分手快乐 该用户已被删除
楼主
发表于 2015-1-20 11:42:27 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-25 02:32

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表