问答题
【说明】
一、静态网页制作
某电子商务公司用ASP实现了一个用于手机销售信息查询的网页,主页文件名为“index.html”,其文档内容如下。
[index.html文档内容]
<html>
<head>
<title>易搜手机资讯广场</title>
</head>
<frameset cols="198, *" "border=0">
<frame name="side" src="side.html" scrolling="No">
<frameset rows='96, *" "border=0">
<frame name="top" src="top.html" scrolling="No">
<frame name="main" src="main.asp" scrolling="Auto">
</frameset>
</frameset>
<body>
</body>
</html>
二、动态网页编程
图6-9是用户按品牌型号进行查询时的网页(main.asp)在IE浏览器上运行后的效果图。表6-9是手机信息数据库表结构。
问答题
【问题1】
框架在网页布局中主要起什么作用?手机销售信息查询主页中定义了几个框架,分别显示哪个文档?
【正确答案】框架将浏览器的窗口分为多个显示区域,每个区域可以独立的显示一个HTML文档。3个框架。side框架对应side.html,top框架对应top.html,main框架对应 main.asp
【答案解析】这是一道要求读者掌握框架布局常识的基本概念题,本题的解答思路如下。
框架布局可以把不同对象放置到不同页面加以处理,即框架将浏览器的窗口分为多个显示区域,每个区域可以独立的显示一个HTML文档,每个区域可以独立翻滚。各个框架之间既在内容上相互关联又是彼此独立的,这使得使用框架对网页进行布局会相对灵活且易于维护。由于框架可以取消边框,因此一般来说不影响整体美观。
HTML中框架的基本语法是:
<frameset rows="96,*" "border=0">
<frame name=" " src=" " scrolling="yes|no|auto">
</frameset>
<frameset>…</frameset>用于规定主文档中有几个帧并且各个帧是如何排列的。其rows属性用于规定主文档中各个帧的行定位;border属性用于规定主文档中各个帧的列定位。
<frame>标签放在<frameset>…</frameset>之间,用于定义某一个具体的帧。其中,name属性用于说明帧的名称,src属性用于说明帧的源html文件名(可包含其相对路径),scrolling属性用于设置卷滚条,其缺省值是auto。
结合以上知识点仔细阅读题干中给出的index.html文档的内容,它使用了两组frameset,设置了3个框架,名字分别为side、top、main。语句<frame name="side" src="side.html" scrolling="No">说明side框架对应side.html,语句<frame name="top" src="top.html" scrolling="No">说明top框架对应top.html,语句<frame name="main" src="main.asp" scrolling="Auto">说明main框架对应main.asp。
问答题
【问题2】
在IE显示的网页上,当用户单击【搜索】按钮后,将会以
(1) 方式将用户输入的查询数据提交给服务器,并且触发
(2) 程序的执行,从而完成用户对手机类型的搜索请求。
(1)
- A.get
- B.post
- C.pull
(2)A.main.aspB.main_search.aspC.index.asp
【正确答案】(1) B,或post
(2) B,或main_search.asp
【答案解析】这是一道要求读者掌握网页中输入数据的提交方式和过程的分析理解题。本题的解答思路如下。
网页控件中的数据提交方式及后续处理是由该控件所在的表单form来定义的。<form>标志具有name、 action、method等属性。其中,action属性指明处理程序的程序名;method属性用来定义处理程序从表单中获得信息的方式,可取值为get或post。get方式是处理程序从当前网页文档中获取数据,这种获取方式传送的数据量是有所限制的,通常限制在1KB以下;post方式与get方式相反,它是当前网页文档把数据传送给处理程序,传送的数据量要比使用get方式大得多。
本试题中与“搜索”按钮相关的编码是在main.asp文档中定义,其相关代码如下:
<from name="forml" method="post" action="main_search.asp">
<input type="submit" name="Submit" value="搜索"></td>
从表单forml的定义可知,当用户单击“搜索”按钮后,该控件的查询数据将以post方式提交给服务器,并且触发main_search.asp程序的执行,从而完成用户对手机类型的搜索请求。
问答题
【问题3】
以下是实现手机销售信息查询的网页加入信息功能的部分代码,其网页显示效果类似图6-9,请将(3)~(6)空缺处的代码填写完整。
<!--以下为实现加入信息功能的部分-->
<form name="fonn1" method="post" action="main_search.asp">
<td>
<div align="left">
<table width="404" border=-"0">
<tr>
<td align="right" width="121">
<font size="2">请选择品牌</font>
</td>
<td align="left" width="194" valign="bottom">
<p>< (3) size="1" name="D1">
<option (4) value="mow">]摩托罗拉</option>
<option value=" (5) ">诺基亚</option>
< (6) >
</p>
</td>
<td align="left" width="69" valign="middle">
<p>
<input type="submit" value="提交" name="B1">
</p>
</td>
</tr>
</table></div></td>
</form>
【正确答案】(3) select (4) selected
(5) nokia (6) /select
【答案解析】这是一道要求读者掌握表单应用的分析理解题。本题的解答思路如下。
从图6-9的显示效果可知,该网页提供一个下拉列表框供用户选择手机类型,因此需要采用<select>…</select>标志对创建一个下拉列表框或可复选的列表框。此标志对用在<form>…</form>标志对之间。 <select>具有name、size和multipe属性,其中name属性是此列表框的名字;size属性用于设置列表的高度,默认值为1:multipe属性不用赋值,直接加入到<select>标志中即可使用,加入此属性后列表框由原来的弹出式列表框变成了一个可以多选的列表框。<option>标志用来指定列表框中的一个选项,它放在 <select>…</select>标志对之间。
综上所述可以判断,(3)、(6)空缺处所填写的内容分别是“select”、“/select”。
<option>具有selected和value属性,selected属性用来指定下拉列表框的默认选项,value属性用来给指定的选项赋值。题干说明中已给出了“Brand字段下共有两种数据:moro、nokia,分别代表摩托罗拉、诺基亚”关键信息,结合图6-9的显示效果可知,(4)空缺处所填写的内容是“selected”,(5)空缺处value属性值为“nokia”。
问答题
【问题4】
手机销售信息查询的网页中使用的数据库连接引擎是什么?连接的后台数据库文件名是什么?
【正确答案】使用的数据库连接引擎是Microsoft.jet.OLEDB.4.0或OLEDB.4.0
连接的后台数据库文件是mod.mdb
【答案解析】这是一道要求读者掌握动态网页编程中数据库连接常识的分析理解题。本题的解答思路如下。
从题干的main.asp文档中可以找到以下与数据库连接方面相关的ASP代码。
dbpath=server.mappath("mod.mdb")
corm.open "PROVIDER=Microsoft.jet.OLEDB.4.0;data souree="&dbpath
由语句dbpath=server.mappath("mod.mdb")可知,连接的后台数据库文件是mod.mdb,它是Microsoft的Access数据库。
在使用conn.open命令与数据库连接时“PROVIDER=Mierosoft.jet.OLEDB.4.0”语句可知,网页中使用的数据库连接引擎是就是PROVIDER的参数值(Microsoft.jet.OLEDB.4.0)。
问答题
【问题5】
假设连接的数据记录集当前指向的记录见表6-10。
表6-10 数据库字段说明表 Id | Brand | Type | Price | Function |
9 | 三星 | X458 | 1300 | 彩屏 |
写出以下ASP代码经过IIS服务器解释后的结果。
<td align="center" width="20%">
<a href="<%=rs ("Type") %>.asp"><font size="2"><%=rs("Type") %></font></a>
【正确答案】<td align="center"width="20%">
<a href="X458.asp"><font size="2">X458</font></a>
【答案解析】这是一道要求读者掌握ASP动态网页编程原理的分析理解题。本题的解答思路如下。
动态服务器页面(ASP,Active Server Pages)是一种服务器端脚本执行环境,使用它可以创建和运行动态、交互的Web应用程序。它与HTML不同的是其中嵌有ASP脚本程序,这些脚本程序均包含在<%…%>之间。Web服务器通过识别这两个标记来发现其中嵌入的ASP脚本程序,并将其解释为普通的HTML代码,然后将它发送给客户端浏览器进行显示。由于每次ASP解释的结果与当前存储的数据和状态有关,因此客户端看到的结果可能会由于这些原因而有所不同,这使得整个网页随着时间而动态变换。
试题中表6-10已给出了连接的数据记录集当前指向的记录和一段ASP代码,该代码中<%=rs ("Type") %>部分经Web服务器解释后将翻译成普通的HTML代码。例如,<%=rs("Type") %>经IIS处理后,将得到当前数据记录集中Type字段的值(X458),因此<td align="cemer" width="20%"><a href="<%=rs("Type") %>.asp"><font size="2"><%=rs("Type")%></font></a>代码经过IIS服务器解释后的结果如下。
<td align="center" width="20%"><a href="X458.asp"><font size="2">X458</font></a>。
问答题
【问题6】
如果网页及素材均存放在本级目录"D:/documents/webpages/"中,网页side.html中有一幅图片msf.gif存放在"D:/documents/webpages/pic/"目录中。为了在改变整个网页存放的目录设置后,仍然能在浏览器中浏览到该图片,图片的src属性值应设置为
(7) 。
- A."D:/documents/webpages/msf.gif"
- B."/webpages/msf.gif"
- C."/pic/msf.gif"
【正确答案】C,或"/pic/msf.gif/
【答案解析】这是一道要求读者掌握绝对路径和相对路径区别的分析理解题。本题的解答思路如下。
网页中的图像、动画等素材都有其固定的存放位置,只有通过路径来调用它们才能把它们显示在网页中。在网页中的路径大体可分为相对路径和绝对路径两种。
完整地描述文件位置的路径称为绝对路径。例如,本试题中网页及素材均存放在本级目录 "D:/documents/webpages/"就是一个绝对路径。如果网页side.html中图片msf.gif的src属性值应设置为 "D"/documents/webpages/pic/msf.gif",那么当改变整个网页存放的目录设置后,将导致浏览器无法在指定的位置打开指定的文件,使msf.gif图片素材不能正常显示,即出现“死链接”现象。
相对路径是以某一文件夹(路径)为基准,然后进行相对的文件查找的路径。在本试题中,网页side.html的图片msf.gif存放在"D:/documents/webpages/pic/"目录中,那么它相对于目录"D:/documents/webpages/"的路径是/pic/,即为了在改变整个网页存放的目录设置后,仍然能在浏览器中浏览到该图片,图片的src属性值应设置为"/pic/msf.gif"。另外,在相对路径中使用“../”来表示上一级目录,“../../”表示上上级目录,依此类推。
另外,当素材(如图片等)使用相对路径时,游览器只需将素材文件下载一次,当再次使用这个图片时,只要再重新显示一次即可。而如果使用素材的绝对路径,则每次显示该素材时都要重新下载一次,这将会大大降低整个网页的显示速度。