第8章 ASP动态网站设计教程

合集下载

ASP动态网页设计基础教程科学出版社职教技术出版中心.ppt

ASP动态网页设计基础教程科学出版社职教技术出版中心.ppt

◆<Title>标记对只能放在<Head></Head>标记
对之间。
【举例2-1】
第2章目录
二、格式标记
1、段落标记 格式:<P>…</P> 功能:设置段落标志,产生一个空白行。
第2章 HTML语言基础
注意: ★P标记含有align属性 ★使用该标记会输出一个空行,使后继内容隔一行
显示 ★<P>可强制换行(换行且加入一个空行) ★用<P></P>将段落包围起来表示一个块
第2章目录
3、HTML文件主体标记--<BODY> 格式:<BODY>……</BODY> 功能:标记文件的主体内容
第2章 HTML语言基础
第2章目录
说明:文档的内容、文字、图像、动画、超链接以 及其他HTML元素均位于该标记中,它是网页编辑的核 心部分。正文标记有自己的属性
几个应注意的问题: ◆以上几个标记均是可选标记 ◆这三个标记可以互相嵌套的。但不允许交叉
HTML网页的执行过程是一个请求/响应的过程
第1章 ASP应用基础
HTML网页的处理流程
第1章目录
2、ASP的执行过程 ASP是动态网页,是后缀为.asp的文件。
要有相应的Web服务器程序才能使用 ASP要在Web上执行,由执行结果生成相应的 HTML页面返回给浏览器。 采用B/S模式
四、静态网页与动态网页的交互过程
目录
§ 2.5 CSS基础
第2章 HTML语言基础
第2章目录
§2.1 HTML语言概述 一、HTML概述
HTML-Hypertext Markup Language-超文本标记语 言。

Asp动态网站制作流程详细步骤

Asp动态网站制作流程详细步骤

小小留言本的制作目录1、创建数据库test.mdb及留言用的数据表liuyan22、创建连接数据库的文件conn.asp23、制作留言本的首页index.asp24、制作留言浏览页list.asp35、制作添加留言的静态页add.htm46、制作提交留言写入数据库的动态页add.asp67、制作查询留言的静态页chaxun.htm78、制作查询留言结果显示页cxjg.asp89、制作删除留言静态页shanchu.htm1010、制作删除留言动态页scjg.asp1111、制作修改留言静态页xiugai.htm1212、制作修改留言动态页xiugai.asp1313、制作修改留言成功动态页xgjg.asp15详细步骤及代码1、创建数据库test.mdb及留言用的数据表liuyan确定数据表的各个字段名称及数据类型分别为:qq(文本,10)、nich(文本,10)、ly(备注)、time(日期/时间,默认值=Now()。

2、创建连接数据库的文件conn.aspc onn.asp代码如下:<%set conn=server.CreateObject("adodb.connection") ‘设置一个adodb数据库连接组件conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.MapPath("test.mdb")‘设定所要连接的数据库(包括名称和路径)%>3、制作留言本的首页index.aspindex.asp代码如下:<%@language="vbscript" codepage="936"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>小小留言本</title></head><body><a href="list.asp">浏览留言</a><a href="add.htm">添加留言</a><a href="chax.htm">查询留言</a><a href="xiugai.htm">修改留言</a><a href="shanchu.htm">删除留言</a></body></html>4、制作留言浏览页list.asplist.asp代码如下:<!--#include file ="conn.asp"--> ‘包含连接数据库的文件<%exec="select * from liuyan" ‘查询数据表记录的表达式set rs=server.CreateObject("adodb.recordset") ‘创建相应记录集rs.open exec,conn,1,1 ‘读取记录集中满足表达式的相应记录%><html><, /P><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>所有访客留言内容</title></head><body><div align="center"><p>所有访客留言内容</p><table width="400" border="1" cellspacing="0" cellpadding="0"><tr><td>编号</td><td>QQ号</td><td>昵称</td><td>留言内容</td><td>留言时间</td></tr><% do while not rs.eof %><tr><td><%=rs("id")%></td><td><%=rs("qq")%></td><td><%=rs("nich")%></td><td><%=rs("ly")%></td><td><%=rs("time")%></td></tr>‘该段代码用来在页面相应单元格中显示查询的记录<%rs.movenextloop%></table><%rs.closeset rs=nothing ‘关闭记录集conn.closeset conn=nothing ‘关闭数据库的连接%><p><a href="index.asp">返回首页</a> </p></div></body></html>5、制作添加留言的静态页add.htm其中主要是一个用来提交留言数据的表单,注意表单中各个文本框等对象的命名add.htm代码如下:<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>添加留言</title></head><body><div align="center"><p>添加新留言</p><form name="form1" method="post" action="add.asp"><table width="359" border="1" cellspacing="0" cellpadding="0"><tr><td width="59">QQ号</td><td width="135"><input name="qq" type="text" id="qq" size="15"></t d></tr><tr><td>昵称</td><td><input name="nich" type="text" id="nich" size="15"></td></tr><tr><td>留言</td><td><textarea name="ly" rows="3" wrap="off" id="ly"></textarea></t d></tr><tr><td colspan="2"><div align="center"><input type="submit" name="Submit" value="添加"><input type="reset" name="Submit2" value="重写"></div></td></tr></table></form><p><a href="index.asp">返回首页</a></p></div></body></html>6、制作提交留言写入数据库的动态页add.aspadd.asp代码如下:<!--#include file ="conn.asp"--><%qq=request.Form("qq")nich=request.Form("nich")ly=request.Form("ly")‘从提交的表单中获取相应的值exec="insert into liuyan(qq,nich,ly)values('"+qq+"','"+nich+"','"+ly+"')" ‘插入记录的表达式conn.execute exec ‘执行该表达式命令response.Write(" 添加留言成功!")conn.closeset conn=nothing%> ‘本段代码用来添加相应记录到数据表中<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>留言成功</title></head><body><a href="index.asp">返回首页</a></body></html>7、制作查询留言的静态页chaxun.htm方法同add.htmchaxun.htm代码如下:<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>查询留言</title></head><body><div align="center"><p>查询留言内容</p><form name="form1" method="post" action="cxjg.asp"><table width="200" border="1" cellspacing="0" cellpadding="0"><tr><td width="74">QQ号</td><td width="120"><input name="qq" type="text" id="qq" size="15"></td> </tr><tr><td>昵称</td><td><input name="nich" type="text" id="nich" size="15"></td></tr><tr><td colspan="2"><div align="center"><input type="submit" name="Submit" value="查询"><input type="reset" name="Submit2" value="重置"></div></td></tr></table></form><p><a href="index.asp">返回首页</a></p></div></body></html>8、制作查询留言结果显示页cxjg.aspcxjg.asp代码如下:<!--#include file ="conn.asp"--><%qq=request.Form("qq")nich=request.Form("nich")‘从表单中获取要查询的条件值exec="select * from liuyan where qq='"+qq+"'or nich='"+nich+"'" ‘设定查询条件表达式set rs=server.CreateObject("adodb.recordset") ‘创建相应记录集rs.open exec,conn,1,1 ‘读取记录集中满足表达式的相应记录%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>查询留言结果</title></head><body><div align="center"><p>查找到的留言内容</p><table width="452" border="1" cellspacing="0" cellpadding="0"> <tr><td>编号</td><td>QQ号</td><td>昵称</td><td>留言内容</td><td>留言时间</td></tr><% do while not rs.eof %><tr><td><%=rs("id")%></td><td><%=rs("qq")%></td><td><%=rs("nich")%></td><td><%=rs("ly")%></td><td><%=rs("time")%></td></tr><%rs.movenextloop%></table><%rs.closeset rs=nothingconn.closeset conn=nothing‘关闭记录集和数据库%><p><a href="index.asp">返回首页</a> </p></div></body></html>9、制作删除留言静态页shanchu.htmshanchu.htm代码如下:<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>删除留言</title></head><body><div align="center"><p>删除留言</p><form name="form1" method="post" action="scjg.asp"><table width="200" border="1" cellspacing="0" cellpadding="0"><tr><td width="68">编号</td><td width="126"><input name="id" type="text" id="id" size="15"></td> </tr><tr><td colspan="2"><div align="center"><input type="submit" name="Submit" value="删除"></div></td></tr></table></form><p><a href="index.asp">返回首页</a></p></div></body></html>10、制作删除留言动态页scjg.aspscjg.asp代码如下:<!--#include file ="conn.asp"--><%exec="delete * from liuyan where id="&request.Form("id")conn.execute execresponse.Write(" 删除留言成功!")conn.closeset conn=nothing%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>删除留言成功</title></head><body><a href="index.asp">返回首页</a></body></html>11、制作修改留言静态页xiugai.htmxiugai.htm代码如下:<html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>修改留言</title></head><body><div align="center"><p>修改留言</p><form name="form1" method="post" action="xiugai.asp"><table width="200" border="1" cellspacing="0" cellpadding="0"><tr><td width="68">编号</td><td width="126"><input name="id" type="text" id="id" size="15"></td> </tr><tr><td colspan="2"><div align="center"><input type="submit" name="Submit" value="修改"></div></td></tr></table></form><p><a href="index.asp">返回首页</a></p></div></body></html>12、制作修改留言动态页xiugai.aspxiugai.asp代码如下:<!--#include file ="conn.asp"--><%exec="select * from liuyan where id="&request.form("id")set rs=server.CreateObject("adodb.recordset")rs.open exec,conn%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>修改留言</title></head><body><div align="center"><p>修改留言</p><form name="form1" method="post" action="xgjg.asp"><table width="360" border="1" cellspacing="0" cellpadding="0"><tr><td>QQ号</td><td><input name="qq" type="text" id="qq" value="<%=rs("qq")%>" size="15 "></td></tr><tr><td>昵称</td><td><input name="nich" type="text" id="nich" value="<%=rs("nich")%>" siz e="15"></td></tr><tr><td>留言</td><td><textarea name="ly" rows="3" id="ly"><%=rs("ly")%></textarea><input name="id" type="hidden" id="id" value="<%=request.form("id ")%>"></td></tr><tr><td colspan="2"><div align="center"><input type="submit" name="Submit" value="修改"><input type="reset" name="Submit2" value="重写"></div></td></tr></table></form><%rs.closeset rs=nothingconn.closeset conn=nothing%><p><a href="index.asp">返回首页</a></p></div></body></html>13、制作修改留言成功动态页xgjg.aspxgjg.asp代码如下:<!--#include file ="conn.asp"--><%exec="select * from liuyan where id="&request.form("id")set rs=server.CreateObject("adodb.recordset")rs.open exec,conn,1,3rs("qq")=request.Form("qq")rs("nich")=request.Form("nich")rs("ly")=request.Form("ly")rs.updaters.closeset rs=nothingconn.closeset conn=nothingresponse.Write("留言修改成功!")%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>修改成功</title></head><body><a href="index.asp">返回首页</a></body></html>11 / 11。

ASP动态网页设计电子课件8

ASP动态网页设计电子课件8

二、FileSystemObject组件漏洞 IIS 3.0、IIS 4.O、IIS 5.0的文件操作都可以通过
FileSystemObiect组件实现,包括对文件的读写、拷贝、 改名、删除,以及对文件夹目录的操作等,但是一旦这样 的权限被用户利用,服务器上的文件系统就面临着极大的 威胁。
【例题】程序8-1.asp
留言显示的是一个超级链接,一般网虫们看到超级链接都会忍不 住用鼠标单击一下。当鼠标移动到该超级链接上时,触发onMouseover 事件。循环判断条件“l”永远为true,那么该死循环将无限执行,导 致用户无法继续正常工作。
防护脚本程序的漏洞:-禁止输入或者重新编码。
方法一:只支持通常的HTML标记而禁止输入脚本程序,则可以通过脚 本程序对表单数据进行检验的手段。 【例题】禁止“<script”字符串出现在留言的内容中,则可以通过类 似于下面的程序来检验:
三、从客户端下载数据库 通常不是很大的Web站点中,都使用Access数据库系统作为网站的
后台数据库。如果攻击者通过某种方法获知或者猜到了网站的后台 Access数据库存放的文件系统的路径及数据库的名字,那么攻击者利 用一个很常用的FTP工具,或者直接在浏览器地址栏中输入地址就能把 这个数据库下载了。 【例题】某Access数据库hz.mdb放在服务器主目录下的db目录下(或者 虚拟目录db下),如果没有对该数据库采取安全措施(如加密等),攻击 者在浏览器的地址栏中输入如下URL,那么数据库中的数据将完全被攻 击者获得: http://www. … .com/db/hz.mdb
【例题】方法一:攻击者只要构造这样的一个用户名:tang’ or ’1’=’1, 就可以通过数据库的验证,进入本来没有特权的页面:

ASP动态网站规划与设计

ASP动态网站规划与设计

给定链接目标的位置
设置显示链接目标的框架 设置快捷键 设置Tab键的顺序
tabindex=num
rel=linktype
设置到链接的关系
18
六、HTML标记简介
• <IMG>图像标识
–图像在网页设计中是必不可少的,所以用户应掌握在 网页中操作图像的方法。 – 格式:<IMG>…</IMG> – 功能:在网页中加入图像等。
ASP动态网站规划与设计
1
一、本课程学习要求
课程特点:实践性和实用性均很强的一门课(技能课)。 学习时—— • 多做(自已实践为主,教师指导为辅) • 多看多借鉴,多模仿(“掠人之美”,为我所用) • 与老师的关系
—老师引进门(新手) —互相学习(高手)
• • • •
充分掌握各种工具性软件 充分利用网络资源 密切注意各种新技术 努力学习各种综合性知识(美术、文学、编排等)
12
一个简单网页结构的例子
13
简单网页结构
术语:< … > 与</ …>配对——容器(contaniner)
14
简单网页结构
• HTML标记
– 1.HTML文档标记 格式:<HTML>…</HTML>标志文件开始和结尾的标记。 – 2.HTML文件头标记 格式:<HEAD>…</HEAD>用于包含文件的基本信息。 – 3.HTML文件主体标记 格式:<BODY>…</BODY>文件主体标记。 注意:<HEAD>与<BODY>为独立的两个部分,不能互相 嵌套。
2
二、课时分配
• 课程总计36学时,2学分,学时分配如下:

ASP动态网页设计教程.ppt

ASP动态网页设计教程.ppt
8
1.2.2 ASP的运行环境及安装
如果只是用HTML设计网页,并不需要特殊的环境,
直接在浏览器上浏览即可。而用ASP设计的网页是在服
务器端运行的,因此必须配置相应的运行环境。 ASP的运行环境可以选择如下安装:
如果是在Windows 95/98平台上运行ASP文件,需要安装个
人Web服务器PWS。 如果是在Windows NT 4.0 Server平台上运行ASP文件,需
1
第1章 ASP设计基础
1.1 Web基础
1.1.1 Web概述 1.1.2 Web常用术语 1、1、3WEB服务器技术 1.2.1 什么是ASP 1.2.2 ASP的运行环境及安装 1.2.3 创建虚拟目录 1.3.1 ASP的一个简单实例 1.3.2 ASP文件的基本构成和约定 1.4.1 ASP的开发工具 1.4.2 ASP的调试技巧
16
1.2.3 创建虚拟目录(续上)
③ 选中“默认Web站点”,单击右键,选择“新建虚拟目录”,出现
如图1-9所示安装向导对话框。
17
1.2.3 创建虚拟目录(续上)
④ 在向导过程中,依次输入相应内容:别名“ASPWEB”、目录
“D:\ASPWEB”以及权限“至少包含读取和运行脚本”后,单击
“完成”按钮即可,此时如图1-10所示。
22
1.3.2 ASP文件的基本构成和约定
1、基本构成
从上述这个简单的ASP程序中,经分析发现,通常由以下3个部分构成:
普通的HTML文件,即一般的Web页面内容 放在<% … %>内的Script脚本语言代码,由服务器端运行。 放在<Script> … </Script>内的Script脚本语言代码,由客户端直接运行。

第八章ASP技术的综合应用精品PPT课件

第八章ASP技术的综合应用精品PPT课件

ASP动态网页设计应用教程
五、预定制商品
如果用户在网站上没有找到其所需商品,用户可以向网站预定该商 品。网站可以根据用户预定的商品信息,了解商店缺货情况,及时充实 商品数量和类型。
Prefill.asp让用户填写预定制商品的信息,因为涉及到数据库的管 理方便,所以只允许本站注册用户才享有此预定商品的权利。我们在页 面上提示用户如果还不是注册会员,则应该首先注册。用户需要填写自 己的会员名、密码、需要预定制的商品的名称和品牌,以及对所定制的 商品的简单描述(这一项不是必需的)。
ASP动态网页设计应用教程
四、会员注册与管理
会员注册与管理模块涉及到新会员的注册、老会员登录及修改个人 资料、会员身份注销及预定制商品。为了避免在程序中连接数据库时所 写的很长的程序段,我们把该语句存放在config.inc文件中。每个需要 连接数据库的程序只要在程序开头部分采用包含文件的方法<!-#include file="config.inc" -->包含该文件。
体育用品商店
BBS
商品检索模块 检索条件输入 检索结果输出
查看结果详情
商品购物模块
用户管理模块
分类游览商品 放入购物车 查看购物车
决定购买 定单生成
注册
定货
身份验证

过 资料修改
通 过
通 过
预定制定单
ASP动态网页设计应用教程
二、功能模块划分
根据网站的功能,将该网站划分为以下几个功能模块。 (1) 模块一:会员注册与管理模块,包括新会员注册、会员身份验 证(即登录)、会员信息修改、会员身份注销和预定制商品。 (2) 模块二:商品陈列上架模块,即实现商店所有商品的分类上架, 供用户浏览选择。 (3) 模块三:购物车模块,需要完成用户选购商品,购物定单生成 功能,以及用户购物积分功能。 (4) 模块四:商品检索模块,包括简单的商品名称精确和模糊检索、 多种条件的组合检索、检索结果的分页显示和检索结果的详细介绍。 (5) 模块五:BBS社区,可实现网上留言聊天等。 (6) 模块六:数据库设计模块,包括按照功能分析设计数据库并处 理各表结构。这个模块是其他所有模块的基础。

第8章 制作ASP动态网页

第8章   制作ASP动态网页

ASP
①编程语言是VBScript之类 的脚本语言; ②VBScript代码被ASP引擎 解释执行。
8.1.2 动态网页常用的开发语言
JSP有如下几个特点。
动态页面与静态页面分离
网页表现形式和服务器端代码 逻辑分开
JSP的效率高
组件(Component)方式更 方便
10
以“<%”和“%>”作为标识符 适应平台更广 安全性更高 可移植性好
简单易学
01
支持COM对象
构建的站点维护简便
运行环境简单
可以使用标记
04
适用于任何浏览器
8.1.2 动态网页常用的开发语言
7
2.
是一种编译型的编程框架,它的核心是NGWS runtime,除了和ASP一样可以采用 VBScript和Javascript作为编程语言外,还可以用VB和C#来编写。
是一个建立服务器端Web应用程序的框架,它是ASP 3.0的后继版本,但并不仅仅 是ASP的简单升级,而是Microsoft推出的新一代Active Server Pages脚本语言。是微 软发展的新型体系结构.NET的一部分,它吸收了ASP以前版本的最大优点并参照Java、VB语 言的开发优势加入了许多新的特色,同时也修正了以前的ASP版本的运行错误。
动态网页可以实现用户注册、用户登录、在线调查、订单管理等各种功能。
动 态网页并不是独立存在于服务器上的网页,只有当用户请求时服务器才会返回 一个完整的网页。
8.1.2 动态网页常用的开发语言
6
1. ASP
ASP是Active Server Pages的缩写,中文含义是“活动服务器页面”。它只能在Windows平 台下使用,虽然它可以通过增加控件而在Linux下使用,但是其功能最强大的DCOM控件却不能 使用。

ASP动态网站设计.

ASP动态网站设计.
13
.样式4 {font-size: 24px} .样式5 {color: #FFFFFF} .样式6 {font-size: 24px; color: #FFFFFF; } .样式7 { font-family: "华文行楷"; color: #FFFF00; } .样式8 {color: #FFFF00} .样式9 { font-family: "华文行楷"; font-size: 16px; color: #FFFF00; } .样式11 { font-size: 16px; color: #FFFF00; } .样式16 { font-size: 18px; font-family: "宋体"; font-weight: bold; } --> </style></head> 14
<body> <center> <hl> <p class="样式3">&nbsp;</p> <p class="样式3 样式8">康健医药祝您幸福、安康!</p> <hl> <hr align="center"> <hl> <p>&nbsp;</p> <p class="样式4 样式5 样式7">珍爱生命、关注健康</p> <p class="样式6">&nbsp;</p> <p class="样式4">&nbsp;</p> <span class="样式9"><hl> </span> </center> <center> <p align="center" class="样式11 样式16"> 当前日期和时间是:<%=now %><br> </p> </center> </body> </html>
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.4.1 使用Content Linker组件创建列 表文件
• 要使用Content Linker组件,必须首先创建一个列表文件。 Content Linker组件正是通过读取这个文件来获得处理链接的 所有页面的信息。列表文件都是纯文本格式的,如下例所示 • Xajh01.asp 第一章 灭门 • Xajh02.asp 第二章 聆秘 • Xajh03.asp 第三章 救难 • …… • Xajh40.asp 第四十章 曲谐 • Xajh41.asp 后记 • 在列表文件中,第一列URL是与页面相关的超链接地址,第二 列是在网页上显示的链接描述,并且这两列必须用Tab键来隔 开。
• 广告条放置到网站后,用户对广告条进行单击操作后,ASP就会打开重定 向文件。重定向文件通常是用户创建的文件,包含用来解析由Ad Rotator 对象发送的查询字符串的脚本,并将用户重定向到与用户所单击的广告所 相关的URL。用户也可以将脚本包含到重定向文件中,以便统计单击某一 特定广告的用户数目,并将这一信息保存到服务器上的某一文件中,如下 例所示: • <% • '将单击情况记录到Web服务器日志文件中 • Response.AppendToLog Request.QueryString("url") • '重定向到广告指定的站点 • Response.Redirect (Request.Querystring("url")) • %>
习 题
1. ASP有哪几种调用组件的方法? 2. 简述使用Ad Rotator组件需要哪几个文件,它们 都起什么作用? 3. 试简要说明Browr Capabilities组件的工作原理。 4. 参照本章练习的操作,使用Content Linking组件 调用列表文件,实现页面的列表跳转,程序运行 效果如图8-20所示。 5. 参照本章练习的操作,创建一个可对字典进行 项目查询的页面,程序运行效果如图8-21所示。
8.6 使用Counters组件制作计数器
• Counters 组件用于创建 Counters 对象,该对象可创建 一个或多个计数器,这些计数器用于跟踪某一网页或 某一网站访问次数的信息。一个计数器包含一个整数 的持久值,一旦创建了计数器,它将一直持续下去直 到被删除为止。
• 一个站点只能创建一个计数器组件,但该组件可以有 多于一个的计数器。Counters对象通常是在Global.asa 文件中用以下命令创建的: • <OBJECT RUNAT=Server SCOPE=Application ID=Counter PROGID="MSWC.Counters"> • </OBJECT>
8.4.2 使用Content Linker组件的方法
8.5 使用Browser Capabilities组件建 立页面索引
• Browser Capabilities组件用于检测客户端浏览器的能力。通过该组件,可 以知道浏览器的名称、版本,以及是否支持框架、ActiveX控件、Cookie和 脚本程序等。 • Browser Capabilities组件的工作原理如下:当客户端浏览器向服务器发送 页面请求时会自动发送一个User Agent HTTP标题,而该标题是一个声明浏 览器及其版本的ASCII字符串。而Browser Capabilities组件就将User Agent映 射到文件Browscap.ini中所注明的浏览器,并通过BrowserType对象的属性 来识别客户浏览器。 • 若该对象在browscap.ini文件中找不到与该标题匹配的项,那么将使用默认 的浏览器属性。若该对象既未找到匹配项且browscap.ini文件中也未指定默 认的浏览器设置,则它将每个属性都设为字符串UNKNOWN。 • 在默认情况下,browscap.ini文件被存放在C:\WINDOWS\system32\inetsrv 目录中,用户可以编辑这个文本文件,以添加属性或根据最新发布的浏览 器版本的更新文件来修改该文件。
8.4 使用Content Linker组件建立页面 索引
• Content Linker组件可在一系列相互关联的页面 中建立一个目录表,在它们中间建立动态链接 ,并自动生成和更新目录表及先前和后续的 Web页的导航链接。该组件常用于需要建立大 量页面为访问者提供导航,例如联机报刊、电 子读物网站以及论坛邮件等。
8.7 使用Page Counter组件
• Page Counter组件用于创建PageCounter对象,该对象 用来记录和显示Web页被打开的次数。每隔一定的时 间,此对象将当前的页面访问次数写入一个文本文件 ,这样就可以保证数据不会在服务器关机时丢失。 Page Counter组件使用一个内部Central Management 对象来记录应用程序中每一页被打开的次数。 • PageCounter对象有3个方法:Hits、PageHit和Reset。 其中,Hits方法显示指定的网页被打开的次数, PageHit方法使当前页面的访问次数增加一次,Reset 方法将指定的网页的访问次数重置为0。
8.2 利Ad Rotator组件制作网站广告条
• 使用Ad Rotator组件可快速在网站上建立一个 广告系统,允许在每次访问ASP页面时显示新 的广告,并且提供了很强的功能,例如:在页 面上旋转显示广告图像的能力,跟踪特定广告 显示次数的能力以及跟踪客户端在广告上单击 次数的能力。 • 要使用Ad Rotator组件的效果,需要用到3个文 件。AD Rotator计划文件记录所有广告信息, 重定向文件对单击广告条的事件进行处理,广 告显示页面则建立和显示广告条。
新世纪高职高专规划教材
《ASP动态网站开发实训教程》
第8章 使用ASP常用组件
主要内容
组件是包含可执行代码的动态链接库 (.dll) 或可执行文件夹 (.exe) ,灵活地使用各种组件 是建立一个强大的 Web应用程序的关键。ASP 自带一些基本组件,直接使用它们可以高效 地完成各种复杂的功能,如数据库访问、广 告旋转、文件读取和电子邮件发送等。
本章重点
Ad Rotator组件
Content Linker组件 Counters组件 Content Rotator组件 Browser Capabilities组件 Page Counter组件
8.1 创建组件实例
• ActiveX组件是一个存在于Web服务器上的文件, 该文件包含执行某项或一组任务的代码。组件 可以执行公用任务,这样网站开发者就不必逐 一去创建执行这些任务的代码。例如,使用一 个股票行情收报机组件即可以在Web页上显示 最新的股票报价。
8.9 使用MyInfo组件
• MyInfo组件可创建一个MyInfo对象,该对象跟踪Web站点所有 者的个人信息,如经营Web站点的组织名称、地址及Web站点 的设置,Web站点是否有guest book。 • 每个站点只能创建一个MyInfo对象,只需创建一个简单的 MyInfo组件的实例就可以使Web网站上的所有页面均能获得其 信息。通常是在Global.asa文件中用以下命令来创建MyInfo对 象: • <OBJECT RUNAT=Server SCOPE=Session ID=MyInfo PROGID="MSWC.MyInfo"> • </OBJECT> • 创建MyInfo对象后,它的属性值保存在文本文件myinfo.xml中 。myInfo.xml默认的保存位置是 C:\WINDOWS\system32\inetsrv。
8.2.1 创建Ad Rotator计划文件
• Ad Rotator 组件是通过读取Ad Rotator计划文件 来完成工作的。Ad Rotator计划文件包括与要 显示的图像文件的地点有关的信息以及每个图 像的不同属性,下面就是一个标准的AD Rotator计划文件:
8.2.2 设置广告图像重定向文件
8.2.3 创建网站广告显示页面
• 如果ASP在页面中调用Ad Rotator组件,首先必 须使用Server.CreateObject方法实例化 AdRotator 对象。Ad Rotator组件的PROGID属 性是MSWC.AdRotator,完整的代码如下: • < % Set ad = Server.CreateObject("MSWC.AdRotator") %> • <%= ad.GetAdvertisement("/ads/adrot.txt") %>
8.10 使用Tools组件
8.11 使用IIS Log组件
8.12 使用Dictionary对象
• Dictionary 对象是保存键和项目对的字典对象 ,字典中的项目 (可以是任何形式的数据 )被保 存在数组中,每项都与唯一的键相关联。键值 用于检索单个项目,通常是整数或字符串,但 不能为数组。
8.8 使用Permission Checker组件
• Permission Checker组件创建一个PermissionChecker对象,该对 象使用IIS提供的密码验证协议来确认用户是否有权限读取某 个文件。PermissionChecker对象只有一个HasAccess方法,该 方法决定用户是否有权访问某个指定的文件。如下例所示: • <% Set pmck = Server.CreateObject("MSWC.PermissionChecker") %> • Physical Path Access = <%= pmck.HasAccess("c:\pages\abc\default.htm") %> • '该路径是一个网页、文件或资源的物理或虚拟路径 • Virtual Path Access = <%= pmck.HasAccess("/abc/default.htm") %>
相关文档
最新文档