ASP网站制作之ASP服务器组件编程心得
楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。编程|服务器|心得作者;小刀利用ASP编程的一年夜长处是可使用浩瀚的服务器组件(ActiveXServerComponents)。这些组件供应诸如告白轮显
(AdRotator)、扫瞄器兼容(BrowserCapabilities)、数据库存取(DatabaseAccess)、文件超链接(Content
Linking)、文件存取(FileAccess)等等功效。利用服务器组件,能够经由过程十分复杂的体例高效力地完成各类庞大的工
作。
一样平常,ASP的各个组件一般利用Server.CreateObject办法来创立。比方,创立一个ADRotator组件可用:
<%
setad=Server.CreateObjet(“MSWC.AdRotator”)
%>
在ASP的各个组件中,ActiveXDataObject(ADO)组件有着极其主要的感化。它是一种能够供应Web页面计划开辟人
员疾速存取Internet的数据库,并在用户端完成网上及时更新显现的Web数据库手艺;ADO几近兼容于各类数据库体系,而
且超过多种分歧的程序言语开辟情况。
比方,我们在网上向本公司的客户群供应各类硬件的晋级程序,与此同时,我们但愿可以纪录下客户的相干材料。在
之前,这类Web上的交互操纵一样平常接纳CGI来完成,不但难以誊写和保护,并且对处置器的损耗很年夜。如今,我们利用ASP的
ADO组件,就能够在短短的两个小时悄悄松松的完成之前必要三天赋能完成的开辟事情,并且还不用消费太多的工夫和精神
放在保护上。
起首,我们必要写一个供用户填写材料的表格页面,大概我们还能够将这个页面与前面的ASP处置程序放在统一个文件
里,只必要我们在<form>代码中说明Action的工具是本程序(要末就甚么都不写)。
假定我们的程序名是download.html,上面是原代码:
<html>
<body>
`声明提交办法及传送信息的体例
<formMETHOD="POST"ACTION="download.asp">
<fontface=arial>
<tableborder="0"align=center>
<tr>
<td><fontcolor="black"size="2"><b>Name:</b></font></td>
<td><inputTYPE="text"SIZE="30"NAME="name"></td>
</tr>
<tr>
<td><fontcolor="black"size="2"><b>Telephone:</b></font></td>
<td><inputTYPE="text"SIZE="30"NAME="telephone"></td>
</tr>
<td><fontcolor="black"size="2"><b>E-mail:</b></font></td>
<td><inputTYPE="text"SIZE="30"NAME="email"></td>
</tr>
<tr>
<td><fontcolor="black"size="2"><b>Address:</b></font></td>
<td><inputTYPE="text"SIZE="30"NAME="address"></td>
</tr>
<tr>
</table>
<hr>
<tablealign=center><tr>
<td><inputTYPE="Submit"VALUE="Submit"></td>
<tdwidth=30></td>
<td><inputTYPE="Reset"VALUE="Reset"></td>
</tr></table>
</font>
</form>
</body>
</html>
然后,我们入手下手编写数据处置程序download.asp。
<scriptlanguage=vbscriptrunat=server>
`设置缓冲区属性
response.buffer=true
Dimname
判别有关字段是不是为空
ifLen(request.form("name"))=0then
name="NotEntered"
else
不为空时,使用Response工具让Server猎取表格中“name”字段内容
name=request.form("name")
endif
Dimtelephone
ifLen(request.form("telephone"))=0then
telephone="NotEntered"
else
telephone=request.form("telephone")
endif
Dimaddress
ifLen(request.form("address"))=0then
address="NotEntered"
else
address=request.form("address")
endif
因为我们将接纳Email发送的体例将该下载软件供应给用户,以是我们必需请求客户供应无效的Email地点。
Dimemail
email=request.form("email")
`判断客户填写的“Email”材料中是不是含有出格字符“@”
ifinstr(email,"@")=0then
`若为否,引诱客户至“back.htm”的提醒页面。
response.redirect("back.htm")
else
创建数据库毗连通道
SetobjConn=Server.CreateObject("ADODB.Connection")
翻开必要的数据库
objConn.Open("download")
创立工具接口
setobjRst=Server.CreateObject("ADODB.Recordset")
setobjRst.ActiveConnection=objConn
设定对数据库更新数据时的锁定机制为:数据在更新时并未锁定其他用户的举措。
objRst.LockType=3
数据库源
objRst.Source="client"
把持数据更新后过滤下载的数据范例
objRst.CursorType=adOpenKeyset
将从表格内猎取的材料传送到web服务器上的数据库
objRs</p>Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助: ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。 因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件) 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
页:
[1]