仓酷云

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

[学习教程] ASP教程之复杂天生静态页面举措

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:49:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。比来偶然中发明一种复杂的举措,对照合适老手,不敢独享,拿出来给人人分享一下。

中央头脑就是挪用静态模板(也就是你做好ASP网页)。用这类举措能够把几近一切的ASP网页都酿成HTM页,从而完成天生静态页的妄想。

例子:
<textareaname="a"cols="60"rows="6"id="a"><!--#includefile="index.asp"--></textarea>

在ASP网页内里间接显现到表单的文本栏里,便利修正。注重:这时候候在你文本栏里的index.asp代码已酿成一般的HTM构成的静态页代码了。这时候提交表单传到数据库中。

然后的步骤就是:修改数据库的index.asp静态页,使用FSO之类的写进HTM文件中,保留。

假如是旧事公布的话,倡议天生STHML文件,就是新浪用那种,就图它能够实行include语句,真是天南地北任我游啊,触类旁通,具体申明。

在数据库创建头部字段,左部,右部,底部(假如你牛X的话能够加上ID字段,今后多做几套模板爱天生啥样天生啥样。),这几个字段必定要TEXT型,由于装的多(就算是新浪的首页多分几块也够用了。)

做好一般的ASP页(注重:你在做ASP页的时分就应当把头,左,右,下都分隔做,由于我们挪用时是一个一个挪用的。),下面是头,左面是旧事内容,左面是旧事列表,上面是底,任意做个HTML模板吧。(不会做的看最初面)

最初:
使用replace的交换年夜法。

好比师长教师成头部,要就把模板里的代码交换成数据库里读出的头部字段里存的代码,顺次类推,最初把一切掏出的代码整合写进HTM文件内里。

友谊提醒示例代码:
setrs=conn.execute("select*fromhtml")
head=rs("head")
left=rs("left")
right=rs("right")
foot=rs("foot")
rs.close
setrs=nothing
html=head&left&right&foot
没测试,归正就是这个意义。


固然你在天生的时分不成能只天生一条,必要天生多条,我们能够把这个历程看成一个函数,然后:
setrs=server.createobject("adodb.recordset")
sql="select*fromhtml"
rs.opensql,conn,1,1
dowhilenotrs.eof
call天生历程函数
rs.movenext
loop
rs.close
setrs=nothing


写到这里忘了一个最主要的器材,晕逝世,恍恍惚惚都不晓得在写些甚么。忘了到场文章信息了,汗。。。,不外我想人人都晓得应当怎样往里加信息了。我再说就是空话了。


SORRY,我还没说完。


关于HTM模板:

<html>
<head>
<metaname="keywords"content="&#36;keywords&#36;"/>
<metaname="description"content="&#36;description&#36;"/>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title>&#36;title&#36;</title>
<styletype="text/CSS">
<!--
body{
margin-left:0px;
margin-top:0px;
}
body,td,th{
font-family:宋体;
font-size:12px;
color:#666666;
}
.newtitle{
font-size:14px;
font-weight:bold;
}
-->
</style></head>

<body>
<tablewidth="980"border="0"align="center"cellpadding="0"cellspacing="0"style="border:#CCCCCC;border-width:1px;border-style:solid">
<tr>
<tdcolspan="2">&#36;head&#36;</td>
</tr>
</table>
<tableheight="5"><tr><td></td></tr></table>
<tablewidth="980"border="0"align="center"cellpadding="0"cellspacing="0">
<tr>
<tdwidth="69%"align="left"valign="top"><tablewidth="100%"border="0"cellspacing="0"cellpadding="0"style="border:#CCCCCC;border-width:1px;border-style:solid">
<tr>
<tdheight="60"align="center"><spanclass="newtitle">&#36;newtitle&#36;</span></td>
</tr>
<tr>
<td><tablewidth="98%"border="0"align="center"cellpadding="0"cellspacing="0">
<tr>
<td>&#36;content&#36;</td>
</tr>
</table></td>
</tr>
<tr>
<tdheight="30">公布工夫:&#36;newother&#36;</td>
</tr>
</table>
<tableheight="5"><tr><td></td></tr></table>
</td>
<tdwidth="1%"rowspan="2"align="left"valign="top"></td>
<tdwidth="30%"rowspan="2"align="left"valign="top"><tablewidth="100%"border="0"cellspacing="0"cellpadding="0"style="border:#CCCCCC;border-width:1px;border-style:solid">
<tr>
<tdalign="left"valign="top">&#36;other&#36;</td>
</tr>
</table></td>
</tr>
<tr>
<tdalign="left"valign="top">
<tablewidth="100%"border="0"cellspacing="0"cellpadding="0"style="border:#CCCCCC;border-width:1px;border-style:solid">
<tr>
<tdheight="30">旧事来历:&#36;about&#36;</td>
</tr>
</table>
</td>
</tr>
<tr>
<tdcolspan="3"></td>
</tr>
</table>
<tableheight="5"><tr><td></td></tr></table>
<tbody>
<tablewidth="980"border="0"align="center"cellpadding="0"cellspacing="0"style="border:#CCCCCC;border-width:1px;border-style:solid">
<tr>
<tdcolspan="2">&#36;foot&#36;</td>
</tr>
</table>
</tbody>
</body>
</html>

实在用不必&#36;标记都无所谓,成绩这标记很吉祥。


SORRY,另有:

天生页面时简单呈现的成绩:

假如在网页中含有JAVASCRIPT一定少不了“‘”(单引号),这个标记SQL跟他有仇,以是我们最好仍是用replace的交换年夜法,把它交换成如"蓝蓝蓝蓝蓝"或"色色色色色"等不简单反复的字符,天生时在把他replace过去.

Text字段固然装的多但也是无限制的以是恰到好处,装太多一定存不下的.

天生的时分最好不要全体天生,我想尽年夜多半的网站都是一次天生十几个或几十个页面,以是最幸亏天生页面到场表单然后让办理员选择想天生的旧事,以后用split函数拆分出必要天生网面的ID.


点一下题:后面我说过的天生STHML文件它不成以包括.ASP文件,要用的话只能用iframe,但能够包括.HTM,说到这里全分明了吧,天生HTM一点不杂复.


最初说一下这类办法天生的较率对照低,但一定是最合适老手的,我们在租来的空间里万万别乱试,要天生最幸亏当地天生好然后打包上传到空间里.

大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧
不帅 该用户已被删除
沙发
发表于 2015-1-20 05:15:40 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-2-2 22:33:46 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
深爱那片海 该用户已被删除
地板
发表于 2015-2-8 16:35:58 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
admin 该用户已被删除
5#
发表于 2015-2-25 20:50:08 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
海妖 该用户已被删除
6#
发表于 2015-3-8 03:41:20 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
再现理想 该用户已被删除
7#
发表于 2015-3-22 04:09:33 | 只看该作者
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-2 10:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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